python生成excel的实例代码

yipeiwu_com6年前Python基础

本文实例为大家分享了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设计】。

相关文章

Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)

环境: Python3.7 依赖库: import datetime import random import requests import hashlib import json...

关于Pytorch MaxUnpool2d中size操作方式

关于Pytorch MaxUnpool2d中size操作方式

下图所示为最大值的去池化操作,主要包括三个参数,kernel_size: 卷积核大小(一般为3,即3x3的卷积核), stride:步,还有一个新的size。 从图中可以看出,它将维度4...

Python使用ftplib实现简易FTP客户端的方法

本文实例讲述了Python使用ftplib实现简易FTP客户端的方法。分享给大家供大家参考。具体实现方法如下: #!/usr/bin/python #-*- coding:utf-...

PyCharm代码回滚,恢复历史版本的解决方法

PyCharm代码回滚,恢复历史版本的解决方法

当我们修改一份代码的时候,也许会碰到修改后的代码还不如修改之前的代码能够满足自己的需求,那么这个时候我们就需要对代码进行回滚,下面我们来看一下在PyCharm里面如何操作。 首先在我们需...

python matlibplot绘制3D图形

python matlibplot绘制3D图形

本文实例为大家分享了python matlibplot绘制3D图形的具体代码,供大家参考,具体内容如下 1、散点图使用scatter from mpl_toolkits.mplot3...