将 Pandas 数据框导出为 CSV

export Pandas Dataframe to CSV

我有一个非常简单的函数,它使用最新版本的 pyside2 和 python 3.7.

在我的 pyside2 项目中将 sqlite 导出到熊猫数据帧到 csv
import pandas as pd

    conn = sqlite3.connect(db_file, isolation_level=None,
                           detect_types=sqlite3.PARSE_COLNAMES)
    db_df = pd.read_sql_query("SELECT * FROM error_log", conn)
    db_df.to_csv('database.csv', index=False)

我想介绍一下让用户选择文件保存位置的功能。我可以拉出一个文件选择器,比如

name = QFileDialog.getSaveFileName(self, "Save", os.getcwd(), "CSV Files (*.csv)")

我的问题是如何将 QfileDialog 与导出到 csv 的代码连接起来。

我尝试了以下方法,但没有成功。

name = QFileDialog.getSaveFileName(self, "Save", os.getcwd(), "CSV Files (*.csv)")
        if name[0] :
             with open(name[0], "w") as file :
                 file.write(db_df)

好的,我想通了。

        import pandas as pd
        conn = sqlite3.connect("data.db", isolation_level=None,
                               detect_types=sqlite3.PARSE_COLNAMES)

        name, _ = QFileDialog.getSaveFileName(self, "Save", os.getcwd()+os.sep+"all.csv", "CSV Files (*.csv)")
        db_df = pd.read_sql_query("SELECT * FROM '{}'".format(userInput), conn)
        if not name : return 0
        db_df.to_csv(name, index=False)

成功了!其中 userInput 是数据库 data.db.

中 table 的名称