使用Python将MySQL表格转为Excel (.xls)或CSV文件 (.csv)

0 投票
1 回答
956 浏览
提问于 2025-04-15 20:37

我想用Python脚本把MySQL数据库表里的内容转换成Excel(.xls)文件或者用逗号分隔的文件(csv)... 这样做可以吗?有没有人能帮我一下?

提前谢谢大家,

Nimmy

1 个回答

1

安装了第三方项目 mysqldb 后,你就可以很方便地读取表格,比如:

import MySQLdb
conn = MySQLdb.connect (host = "localhost",
                        user = "testuser",
                        passwd = "testpass",
                        db = "test")
cursor = conn.cursor()
cursor.execute("SELECT * FROM thetable")
while True:
   row = cursor.fetchone()
   if row is None: break
   # here: do something with the row

当然,你可以使用Python自带的 csv 模块把每一行写入一个 csv 文件——只需要在代码开头加一句 import csv。然后,在 cursor.execute 之后,你可以使用类似下面的代码:

with open('thefile.csv', 'w') as f:
    writer = csv.writer(f)
    while True:
        row = cursor.fetchone()
        if row is None: break
        writer.writerow(row)

如果你想把数据写入一个 .xls 文件,而不是 .csv 文件,可以看看第三方模块 xlwt

撰写回答