首页 > 解决方案 > 如何将 XLSX 文件转换为与 XLSX 同名的 CSV?

问题描述

我将 .xlsx 文件转换为数据框,然后转换为 .csv 文件。该代码将 CSV 文件名写入为“output.csv”。如果我上传了许多 .xlsx 文件,如何使 CSV 文件名与 .xlsx 文件名相同?

def getExcel ():
    global df

    import_file_path = filedialog.askopenfilename()
    df = pd.read_excel (import_file_path,)
    df.to_csv('output.csv', index=False, header=True)
    print (df)

标签: pythonpandasdataframecsv

解决方案


不要使用全局变量。让函数返回数据帧,调用者可以决定是打印还是存储它。

splitext在这里用来处理 .xls 或 .xlsx。

def getExcel ():
    import_file_path = filedialog.askopenfilename()
    df = pd.read_excel (import_file_path)
    newname = os.path.splitext(import_file_path)[0] + '.csv'
    df.to_csv(newname, index=False, header=True)
    return df

推荐阅读