首页 > 编程语言 > 详细

Python --Excell写入数据

时间:2017-09-17 01:03:27      阅读:408      评论:0      收藏:0      [点我收藏+]

 

功能场景:

通过python代码实现:将数据库表的查询结果写入到excell中:

参考:http://openpyxl.readthedocs.io/en/default/worksheet_properties.html

      http://www.cnblogs.com/guanfuchang/p/5970435.html

代码例子:

import MySQLdb
import openpyxl //引入excell相关的库,如果没有安装,先安装
import sys
from openpyxl import Workbook


wb = Workbook()
# 激活 worksheet
ws = wb.active
# 定义第一行表头内容
ws[‘A1‘] = "版本名称"
ws[‘B1‘] = "版本提交时间"
ws[‘C1‘] = "版本提交人"
def excell_insert(v1,v2,v3): # append方法进行添加行 
ws.append([v1, v2, v3])
wb.save(
"D:\\Study\\myPython\\sample.xlsx") #调用excell_insert()方法:
cursor.execute(sql_1) #----这里省去了数据库的连接与sql部分,直接跳到执行
results1
= cursor.fetchall() #匹配所有的查询结果
for row in results1: #循环,逐行写入excell excell_insert(row[0],row[1],row[2])

执行结果:
技术分享

注意点:

1、定义 excell_insert()时,以下两个初始化,是全局的定义(一次初始化即可),一定是在最外层,不是在方法里。

wb = Workbook()
ws = wb.active

遇到的坑:

我在操作时,把这2个直接写到方法里,和插入操作一起执行,导致循环调用方法,却只插入一条记录。原因就是:每次都执行一次如下的2个操作,excell数据被初始化了。

2、可以在wb.save()中指定要保存的excell文件的路径。注意:路径格式(双斜杠): D:\\Study\\myPython\\sample.xlsx。

3、遇到的问题:

[Errno 13] Permission denied: ‘D:\\Study\\myPython\\sample.xlsx‘

  原因:我打开了保存数据的excell文件,导致程序执行时,无法写入。

  解决:关闭打开的excell,再执行即可。

技术分享

 

Python --Excell写入数据

原文:http://www.cnblogs.com/mcsmiaoblog/p/7533539.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!