import pymysql,xlwt def to_excel(table_name): host, user, passwd, db = '127.0.0.1', 'root', '123', 'mytable' conn = pymysql.connect(user=user, host=host, port=3306, passwd=passwd, db=db, charset='utf8') cur = conn.cursor() # 建立游标 sql = 'select * from %s;' % table_name cur.execute(sql) # 执行mysql fields = [filed[0] for filed in cur.description] # 列表生成式,所有字段 print(fields) all_data = cur.fetchall() # 所有数据 #写excel book = xlwt.Workbook() # 先创建一个book sheet = book.add_sheet('sheet1') # 创建一个sheet表 # enumerate自动计算下标,将表头导入Excel for col, field in enumerate(fields): # 将表头写入第一行,col是列的索引,field字段名 sheet.write(0, col, field) #从第一行开始写 row = 1 # 行数 # 循环出每一行的数据 for data in all_data: # 二维数据,有多少条数据,控制行数 for col, field in enumerate(data): # 控制列数 sheet.write(row, col, field) row += 1 # 每次写完一行,行数加1 book.save(r'D:\%s.xls' % table_name) # 保存excel文件 to_excel('test') print("导出成功")
来源:https://www.cnblogs.com/liuweida/p/11731060.html