欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)導(dǎo)出數(shù)據(jù)生成excel報(bào)表的方法示例

 更新時(shí)間:2017年07月12日 11:44:19   作者:小小易拉罐  
這篇文章主要介紹了Python實(shí)現(xiàn)導(dǎo)出數(shù)據(jù)生成excel報(bào)表的方法,結(jié)合完整實(shí)例形式分析了Python連接、查詢mysql數(shù)據(jù)庫(kù)并導(dǎo)出Excel報(bào)表的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了Python實(shí)現(xiàn)導(dǎo)出數(shù)據(jù)生成excel報(bào)表的方法。分享給大家供大家參考,具體如下:

#_*_coding:utf-8_*_
import MySQLdb
import xlwt
from datetime import datetime
def get_data(sql):
  # 創(chuàng)建數(shù)據(jù)庫(kù)連接.
  conn = MySQLdb.connect(host='127.0.0.1',user='root'\
              ,passwd='123456',db='test',port=3306,charset='utf8')
  # 創(chuàng)建游標(biāo)
  cur = conn.cursor()
  # 執(zhí)行查詢,
  cur.execute(sql)
  # 由于查詢語(yǔ)句僅會(huì)返回受影響的記錄條數(shù)并不會(huì)返回?cái)?shù)據(jù)庫(kù)中實(shí)際的值,所以此處需要fetchall()來(lái)獲取所有內(nèi)容。
  result = cur.fetchall()
  #關(guān)閉游標(biāo)
  cur.close()
  #關(guān)閉數(shù)據(jù)庫(kù)連接
  conn.close
  # 返給結(jié)果給函數(shù)調(diào)用者。
  return result
def write_data_to_excel(name,sql):
  # 將sql作為參數(shù)傳遞調(diào)用get_data并將結(jié)果賦值給result,(result為一個(gè)嵌套元組)
  result = get_data(sql)
  # 實(shí)例化一個(gè)Workbook()對(duì)象(即excel文件)
  wbk = xlwt.Workbook()
  # 新建一個(gè)名為Sheet1的excel sheet。此處的cell_overwrite_ok =True是為了能對(duì)同一個(gè)單元格重復(fù)操作。
  sheet = wbk.add_sheet('Sheet1',cell_overwrite_ok=True)
  # 獲取當(dāng)前日期,得到一個(gè)datetime對(duì)象如:(2016, 8, 9, 23, 12, 23, 424000)
  today = datetime.today()
  # 將獲取到的datetime對(duì)象僅取日期如:2016-8-9
  today_date = datetime.date(today)
  # 遍歷result中的沒(méi)個(gè)元素。
  for i in xrange(len(result)):
    #對(duì)result的每個(gè)子元素作遍歷,
    for j in xrange(len(result[i])):
      #將每一行的每個(gè)元素按行號(hào)i,列號(hào)j,寫入到excel中。
      sheet.write(i,j,result[i][j])
  # 以傳遞的name+當(dāng)前日期作為excel名稱保存。
  wbk.save(name+str(today_date)+'.xls')
# 如果該文件不是被import,則執(zhí)行下面代碼。
if __name__ == '__main__':
  #定義一個(gè)字典,key為對(duì)應(yīng)的數(shù)據(jù)類型也用作excel命名,value為查詢語(yǔ)句
  db_dict = {'test':'select * from student'}
  # 遍歷字典每個(gè)元素的key和value。
  for k,v in db_dict.items():
    # 用字典的每個(gè)key和value調(diào)用write_data_to_excel函數(shù)。
    write_data_to_excel(k,v)

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python文件與目錄操作技巧匯總》、《Python文本文件操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論