所以我有以下代码。它应该导出一个excelfile,但命名不起作用。虽然内容还可以。该文件被命名为">";空数据帧列:[第1列,第2列]索引:[].xlsx">
它应该命名为testDF.xlsx。有简单的解决方案吗?
import pandas as pd
ExportExcelParam = 1;
testDF = pd.DataFrame(columns=['Column1','Column2'], dtype=object)
def ExcelExportDF(Dataframe, ExportExcelParam):
if ExportExcelParam == 1:
Filename = str(Dataframe) + ".xlsx"
Dataframe.to_excel(Filename)
ExcelExportDF(testDF, ExportExcelParam)
这是因为testDF
不是字符串,它只是变量的名称。现在该变量包含一个DataFrame
,所以当您使用str()
时,它将尝试提供一个合理的字符串来表示DataFrame
本身。
一个简单的解决方案是在附加参数中以字符串形式传递名称。是的,它需要键入两次名称,但这可能是最安全、最直接的选项,除非您可以从其他地方检索名称。
def ExcelExportDF(Dataframe, Filename, ExportExcelParam):
if ExportExcelParam == 1:
Dataframe.to_excel(Filename + ".xlsx")
ExcelExportDF(testDF, 'testDF', ExportExcelParam)
编辑:刚刚看到评论。如果你知道自己在做什么,也许这会奏效。