#Python中,对EXCEL文件的读写操作需要安装、导入几个第三方模块
#xlrd模块:只能读取EXCEL文件,不能进行写操作
#xlwt模块:只能进行写操作,但是不能是覆盖写操作(也就是修改Excel文件),一旦覆盖写操作,会报错
#xlutils模块:由于xlrd只能读操作,xlwt不能覆盖写操作,因为涉及到修改Excel文件中的内容,我们需要借助xlutils模块 print("==============读EXCEL文件=============")
import xlrd
#
# #打开一个EXCEL文件
# rbook = xlrd.open_workbook("app_student.xls")
#
# #获取EXCEL中的页
# rsheet = rbook.sheet_by_index(0)
# rsheet = rbook.sheet_by_name("sheet1")
#
# #总行数
# print(rsheet.nrows)
#
# #总列数
# print(rsheet.ncols)
#
# #得到指定单元格的值
# print(rsheet.cell(0,0)) # 结果输出:text:'编号',是一个xlrd.sheet.Cell类
# print(rsheet.cell_value(0,0)) #结果输出字符串:编号
# print(rsheet.cell(0,0).value) #结果输出字符串:编号
#
# #遍历每一行的数据,返回一个list
# for i in range(rsheet.nrows):
# print(type(rsheet.row_values(i)))
# print(rsheet.row_values(i))
#
# #遍历每一列的数据,返回一个list
# for i in range(rsheet.ncols):
# print(type(rsheet.col_values(i)))
# print(rsheet.col_values(i)) print("============写EXCEL=============")
import xlwt
import pymysql
# wbook = xlwt.Workbook()
# wsheet = wbook.add_sheet("sheet1")
# wsheet.write(0,0,"编号")
# wsheet.write(0,1,"姓名")
# wsheet.write(0,2,"性别")
# wbook.save("student.xls") print("==========导出数据到Excel方法一========")
def export_excel(table_name):
host, user, passwd, db = '127.0.0.1', 'jxz', '123456', 'jxz'
coon = pymysql.connect(user=user, host=host, port=3306, passwd=passwd, db=db, charset='utf8')
cur = coon.cursor() # 建立一个普通游标
#cur = coon.cursor(cursor=pymysql.cursors.DictCursor) # 建立字典游标
sql = 'select * from %s ;'%table_name
cur.execute(sql) # 执行sql
fileds = [filed[0] for filed in cur.description] #所有的字段,cur.description 是一个二维元组
all_data = cur.fetchall() #cur.fetchall()返回的是一个二维元组
#cur.fetchmany() # 能传入一个数,返回多少条数据
#cur.fetchone() # 返回一条数据
wbook = xlwt.Workbook()
wsheet = wbook.add_sheet('sheet1')
for col,filed in enumerate(fileds): #写表头的
wsheet.write(0,col,filed)
row = 1 #行数
for data in all_data: #行
for col, filed in enumerate(data): # 控制列
wsheet.write(row, col, filed)
row+=1#每次写完一行,行就加1
wbook.save('%s.xls'%table_name)
export_excel('app_student') print("============修改Excel=============")
import xlutils.copy #或者:from xlutils import copy #1、先用xlrd模块,打开一个excel
newbook = xlrd.open_workbook("app_student.xls") #2、通过xlutils这个模块里面copy方法,复制一份excel
newbook = xlutils.copy.copy(newbook) #3、获取sheet页
newsheet = newbook.get_sheet(0)
lis = ['编号','名字','性别','年龄','地址','班级','手机号','金币']
for col,filed in enumerate(lis):
newsheet.write(0,col,filed)
newbook.save('app_student_new.xls')
 pymysql 字典游标数据格式
[{'gold': 999, 'grade': '天蝎', 'phone': '', 'id': 1, 'age': 0, 'addr': 'testsql', 'sex': '', 'name': 'AAA'}] pymysql 普通游标数据格式:
((1, 'AAA', '', 0, 'testsql', '天蝎', '', 999))

 

Python【操作EXCEL文件】的更多相关文章

  1. python 操作Excel文件

    1   安装xlrd.xlwt.xlutils cmd下输入: pip install xlrd        #读取excel pip install xlwt        #写入excel pi ...

  2. python操作excel文件一(xlrd读取文件)

    一般做接口测试,会把参数和一些数据放入excel表中,这样就不会重新编译代码,提高效率.一般如何操作呢?接下来跟着步骤一起学习吧 执行步骤: 1.首先要安装 xlrd这个模块,用 pip instal ...

  3. 【python小记】python操作excel文件

    题记: 最近因为工作需要,学习了python,瞬间对这个轻松快捷的语给吸引了,以前只知道js脚本是写网页的,没有想到python这个脚本语言的应用范围可以这么广泛,现在做一些简单或稍微复杂的操作,基本 ...

  4. 使用Python操作excel文件

    使用的类库 pip install openpyxl 操作实现 工作簿操作 # coding: utf-8 from openpyxl import Workbook # 创建一个excel工作簿 w ...

  5. python操作Excel文件

    参考: http://www.cnblogs.com/tianyajuanke/p/4048844.html http://blog.chinaunix.net/uid-24701781-id-334 ...

  6. python第三方库——xlrd和xlwt操作Excel文件学习

    python第三方库——xlrd和xlwt操作Excel文件学习 1安装: C:\Users\Lenovo>pip install xlwtCollecting xlwt  Downloadin ...

  7. 用Python的pandas框架操作Excel文件中的数据教程

    用Python的pandas框架操作Excel文件中的数据教程 本文的目的,是向您展示如何使用pandas 来执行一些常见的Excel任务.有些例子比较琐碎,但我觉得展示这些简单的东西与那些你可以在其 ...

  8. 记录python接口自动化测试--把操作excel文件的方法封装起来(第五目)

    前面补充了如何来操作excel文件,这次把如何获取excel文件的sheet对象.行数.单元格数据的方法进行封装,方便后面调用 handle_excel.py# coding:utf-8 import ...

  9. [转载]python操作excel使用win32com

    原文链接:http://blog.163.com/yang_jianli/blog/static/16199000620138532243782/ 使用COM接口,直接操作EXCEL(只能在Win上) ...

  10. python操作excel表格(xlrd/xlwt)

    最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...

随机推荐

  1. 王者荣耀交流协会final发布-第一次scrum立会

    1.例会照片 成员王超,高远博,冉华,王磊,王玉玲,任思佳,袁玥全部到齐 master:袁玥 2.时间跨度 2017年12月1日 17:00 — 17:31,总计31分钟 3.地点 一食堂二楼沙发座椅 ...

  2. Daily Scrum (2015/11/1)

    今天晚上我们照例召开了每周末的小组例会,主要总结本周的工作和讨论下一周的工作. 首先是本周的一些主要工作: 1.进行了代码的修改和完善. 2.开始进行服务器配置和UI. 3.学习借鉴了nutch爬虫的 ...

  3. jsp九大内置对象之config 和 out

    jsp中config的作用是读取web.xml中的配置信息,一般在后台获取初始化的参数,jsp页面用的较少因为jsp属于表现层,一般是获取数据. jsp中的out对象是将内容放到缓冲区中然后显示出来

  4. 第二篇——VC++简单随机四则运算

    目标:编写最简单的四则运算,类似A+B=C: 想法:建立一个Win32控制台应用程序,A和B用随机数表示,运算符号用0~3的数字对应,然后计算并输出即可: 具体过程: 利用函数rand(),返回一个0 ...

  5. ubuntu16.04+cuda8.0+caffe

    =========== 如果出现nvidia-smi failed to communicate with nvidia driver,循环登录情况,则: sudo apt-get remove -- ...

  6. Maven教程--02设置Maven本地仓库|查看Maven中央仓库

    一:设置Maven本地仓库 Maven默认仓库的路径:~\.m2\repository,~表示我的个人文档:例如:C:\Users\Edward\.m2\repository:如下图: Maven的配 ...

  7. HTML和CSS <h1> --1-- <h1>

    Html和CSS的关系 学习web前端开发基础技术需要掌握:HTML.CSS.JavaScript语言.下面我们就来了解下这三门技术都是用来实现什么的: 1. HTML是网页内容的载体.内容就是网页制 ...

  8. mysql 性能分析及explain用法

    转载自http://blog.sina.com.cn/s/blog_4586764e0100o9s1.html 使用explain语句去查看分析结果 如   explain select * from ...

  9. pxe前期接入H3C交换机网络准备

    环境:一个装机vlan3010,一个业务vlan,将接入交换机的下联,上联设置好vlan 如果服务器一直出于dhcp状态,有可能是交换机到服务器的光纤线路有问题,建议在交换机查看端口是否是down的. ...

  10. 【问底】徐汉彬:PHP7和HHVM的性能之争 (真是学到了很多)

    来源:http://www.csdn.net/article/2014-12-25/2823234 作者:徐汉彬 摘要:近日,PHP7和HHVM的性能之争成为了一个讨论热点,但毫无疑问,它们都在提升P ...