Python实现导出数据生成excel报表的方法示例

作者:小小易拉罐 时间:2021-05-17 16:43:57 

本文实例讲述了Python实现导出数据生成excel报表的方法。分享给大家供大家参考,具体如下:


#_*_coding:utf-8_*_
import MySQLdb
import xlwt
from datetime import datetime
def get_data(sql):
 # 创建数据库连接.
 conn = MySQLdb.connect(host='127.0.0.1',user='root'\
             ,passwd='123456',db='test',port=3306,charset='utf8')
 # 创建游标
 cur = conn.cursor()
 # 执行查询,
 cur.execute(sql)
 # 由于查询语句仅会返回受影响的记录条数并不会返回数据库中实际的值,所以此处需要fetchall()来获取所有内容。
 result = cur.fetchall()
 #关闭游标
 cur.close()
 #关闭数据库连接
 conn.close
 # 返给结果给函数调用者。
 return result
def write_data_to_excel(name,sql):
 # 将sql作为参数传递调用get_data并将结果赋值给result,(result为一个嵌套元组)
 result = get_data(sql)
 # 实例化一个Workbook()对象(即excel文件)
 wbk = xlwt.Workbook()
 # 新建一个名为Sheet1的excel sheet。此处的cell_overwrite_ok =True是为了能对同一个单元格重复操作。
 sheet = wbk.add_sheet('Sheet1',cell_overwrite_ok=True)
 # 获取当前日期,得到一个datetime对象如:(2016, 8, 9, 23, 12, 23, 424000)
 today = datetime.today()
 # 将获取到的datetime对象仅取日期如:2016-8-9
 today_date = datetime.date(today)
 # 遍历result中的没个元素。
 for i in xrange(len(result)):
   #对result的每个子元素作遍历,
   for j in xrange(len(result[i])):
     #将每一行的每个元素按行号i,列号j,写入到excel中。
     sheet.write(i,j,result[i][j])
 # 以传递的name+当前日期作为excel名称保存。
 wbk.save(name+str(today_date)+'.xls')
# 如果该文件不是被import,则执行下面代码。
if __name__ == '__main__':
 #定义一个字典,key为对应的数据类型也用作excel命名,value为查询语句
 db_dict = {'test':'select * from student'}
 # 遍历字典每个元素的key和value。
 for k,v in db_dict.items():
   # 用字典的每个key和value调用write_data_to_excel函数。
   write_data_to_excel(k,v)

希望本文所述对大家Python程序设计有所帮助。

标签:Python,excel
0
投稿

猜你喜欢

  • Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)

    2022-04-07 09:50:44
  • javascript实现下雪效果【实例代码】

    2024-05-25 15:18:40
  • Python求两个文本文件以行为单位的交集、并集与差集的方法

    2021-12-25 09:12:18
  • Mysql的基础使用之MariaDB安装方法详解

    2024-01-14 15:03:46
  • 轻松创建nodejs服务器(1):一个简单nodejs服务器例子

    2024-05-11 10:14:21
  • Pygame游戏开发之太空射击实战盾牌篇

    2023-09-20 22:47:59
  • SQLServer无法打开用户默认数据库 登录失败错误4064的解决方法

    2024-01-19 06:59:47
  • PHP队列用法实例

    2023-10-20 12:30:49
  • 修正IE6不支持position:fixed的bug[译]

    2009-08-01 12:44:00
  • Python中的zip函数使用示例

    2021-05-15 01:10:53
  • Python中的正则表达式与JSON数据交换格式

    2023-06-21 18:16:26
  • python机器学习之随机森林(七)

    2023-10-20 00:25:13
  • 使用Python制作一个简易的远控终端

    2022-03-29 21:04:12
  • 利用Python实现RSA加密解密方法实例

    2023-10-07 03:10:58
  • 浅谈PHP中的Trait使用方法

    2023-11-08 09:25:33
  • Python之用户输入的实例

    2022-09-06 13:22:18
  • Python通过m3u8文件下载合并ts视频的操作

    2023-07-19 04:36:51
  • 深入理解Go语言中的Dispatcher

    2024-02-03 03:27:18
  • python 如何将带小数的浮点型字符串转换为整数

    2021-04-24 01:35:51
  • Python中的Socket 与 ScoketServer 通信及遇到问题解决方法

    2021-02-01 04:08:12
  • asp之家 网络编程 m.aspxhome.com