Python【操作EXCEL文件】
- #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文件】的更多相关文章
- python 操作Excel文件
1 安装xlrd.xlwt.xlutils cmd下输入: pip install xlrd #读取excel pip install xlwt #写入excel pi ...
- python操作excel文件一(xlrd读取文件)
一般做接口测试,会把参数和一些数据放入excel表中,这样就不会重新编译代码,提高效率.一般如何操作呢?接下来跟着步骤一起学习吧 执行步骤: 1.首先要安装 xlrd这个模块,用 pip instal ...
- 【python小记】python操作excel文件
题记: 最近因为工作需要,学习了python,瞬间对这个轻松快捷的语给吸引了,以前只知道js脚本是写网页的,没有想到python这个脚本语言的应用范围可以这么广泛,现在做一些简单或稍微复杂的操作,基本 ...
- 使用Python操作excel文件
使用的类库 pip install openpyxl 操作实现 工作簿操作 # coding: utf-8 from openpyxl import Workbook # 创建一个excel工作簿 w ...
- python操作Excel文件
参考: http://www.cnblogs.com/tianyajuanke/p/4048844.html http://blog.chinaunix.net/uid-24701781-id-334 ...
- python第三方库——xlrd和xlwt操作Excel文件学习
python第三方库——xlrd和xlwt操作Excel文件学习 1安装: C:\Users\Lenovo>pip install xlwtCollecting xlwt Downloadin ...
- 用Python的pandas框架操作Excel文件中的数据教程
用Python的pandas框架操作Excel文件中的数据教程 本文的目的,是向您展示如何使用pandas 来执行一些常见的Excel任务.有些例子比较琐碎,但我觉得展示这些简单的东西与那些你可以在其 ...
- 记录python接口自动化测试--把操作excel文件的方法封装起来(第五目)
前面补充了如何来操作excel文件,这次把如何获取excel文件的sheet对象.行数.单元格数据的方法进行封装,方便后面调用 handle_excel.py# coding:utf-8 import ...
- [转载]python操作excel使用win32com
原文链接:http://blog.163.com/yang_jianli/blog/static/16199000620138532243782/ 使用COM接口,直接操作EXCEL(只能在Win上) ...
- python操作excel表格(xlrd/xlwt)
最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...
随机推荐
- CS小分队第二阶段冲刺站立会议(6月2日)
昨日成果:攻克了按钮移动的问题: 遇到问题:一开始按钮移动时候,非常慢,因为是根绝相对位移差来移动,延时很严重,后来改用用鼠标的位置作为按钮的移动位置,效果明显. 按钮的mousedown事件和mou ...
- unix网络编程——TCP套接字编程
TCP客户端和服务端所需的基本套接字.服务器先启动,之后的某个时刻客户端启动并试图连接到服务器.之后客户端向服务器发送请求,服务器处理请求,并给客户端一个响应.该过程一直持续下去,直到客户端关闭,给服 ...
- HTTPS链式编程——AFNetworking 3.0
1. HTTPS 证书认证(导入相关证书) #pragma mark - https认证 - (AFSecurityPolicy*)customSecurityPolicy { // 先导入证书 NS ...
- WinForm中DataGridView的快速查找及将指定行显示到第一行
/// <summary> /// 快速在已绑定的列表查询车辆 /// </summary> /// <param name="sender"> ...
- Redis有序集内部实现原理分析(二)
Redis技术交流群481804090 Redis:https://github.com/zwjlpeng/Redis_Deep_Read 本篇博文紧随上篇Redis有序集内部实现原理分析,在这篇博文 ...
- Activity设置背景透明之开发坑
Activity设置背景透明的常规方法 方法一.在Manifest.xml中,直接在需要设置的Activity中添加主题样式: Android:theme="@android:style/T ...
- 1014 C语言文法定义与C程序的推导过程
<程序> -> <外部声明> | <程序> <外部声明> <外部声明> -> <函数定义> | <声明> ...
- jmeter 常用内置变量
1. vars API:http://jmeter.apache.org/api/org/apache/jmeter/threads/JMeterVariables.html vars.get(& ...
- POJ1149_PIGS
一共有n个猪圈,m个客人,一开始每个猪圈都有一定数量的猪猪.每个客人会打开一些猪圈,带走最多为某一个数量的猪猪,剩下的猪猪可以任意分配在这些开了的猪圈里面,然后重新关上.问所有的客人最多可以带走多少猪 ...
- Windows平台下在服务中添加MySQL
widows下查看服务 1.桌面计算机-->右键-->管理-->计算机管理(本地)--->服务和应用程序-->服务 2.运行 中输入 services.msc 在服务中添 ...