为了账号安全,请及时绑定邮箱和手机立即绑定

使用 tk filedialog 以特定名称保存文件

使用 tk filedialog 以特定名称保存文件

繁星coding 2023-09-26 13:55:21
有没有办法使用 filedialog 将 DataFrame 保存到 Excel 文件中,但是使用特定名称作为“my_file”?我通常使用这个代码path_to_save = filedialog.asksaveasfilename(defaultextension='.xlsx')    df.to_excel(path_to_save, index=False)这将打开一个窗口,我可以在其中选择文件的位置和名称,现在我希望默认使用名称“my_file”,这样就不需要输入它了。有办法吗?提前非常感谢保存的excel文件为空: a_row['column1'] = df['column1']new_df = a_rownew_df2 = pd.DataFrame({'column2': [], '': []})new_df3 = pd.concat([new_df, new_df2])new_df3['column2'] = 'some value'new_df3 = new_df3.set_index(['column1', 'column2'])path_to_save1 = filedialog.asksaveasfilename(defaultextension='.xlsx',  initialfile = 'my_file')new_df3.to_excel(path_to_save1, index=False)是否可以像此图中那样在列名称顶部插入一行?我在 pandas 文档中找不到任何关于此的内容
查看完整描述

1 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

主要问题


initialfile尝试使用函数的参数asksaveasfilename,例如:


path_to_save = filedialog.asksaveasfilename(defaultextension='.xlsx', initialfile = 'my_file')

如何提问


关于 DataFrame 为空,是因为您没有为其分配任何内容。要添加值,您可以使用loc:


df = pd.DataFrame({'column1':[],'column2':[]})

df.loc[0] = ['value1','value2']

您也可以使用 来做到这一点concat,但请确保您的数据框具有相同的列数。


要在顶部添加一行,@edyvedy13在这里找到了这个有趣的解决方案:


df.loc[-1] = ['value1.0','value2.0']

df.insert(0,1,{'value2'})

df.index = df.index + 1

df.sort_index(inplace=True) 


查看完整回答
反对 回复 2023-09-26
  • 1 回答
  • 0 关注
  • 69 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信