python批量处理excel⽂本改为数字_⽤Python批量修改Excel
⽂件,只要这⼏。。。
原标题:⽤Python批量修改Excel⽂件,只要这⼏个模块就能完成⼏天的⼯作
介绍采⽤xlrd模块读取excel⽂件、采⽤xlwt模块写⼊excel⽂件的基本技巧。
python已有⼏个模块可处理word⽂档、excel表格、以及ppt演⽰⽂稿。⾸先,汇总列出各模块对不同版本⽂件的处理能⼒:
docx模块:可读取、写⼊.docx⽂档(不⽀持.doc⽂档!!!)
xlrd模块:可读取.xls、.xlsx表格
xlwt模块:可写⼊.xls表格(不可写⼊.xlsx⽂件!!!)
pptx模块:可读取.pptx,可写⼊.ppt、.pptx(.ppt演⽰⽂稿,只能读取pptx模块⾃⾝输出的,对其他⽅式⽣成的不⽀持!!!)
⾸先介绍xlrd、xlwt模块中如何描述excel表格。
两个模块对excel表格的结构定义都⾮常直观,和平时使⽤excel表格的习惯基本⼀致。
总体分为三个级别:⼯作簿——⼯作表——单元格。
⼀个excel表格就是⼀个⼯作簿。
⼀个⼯作簿可包含多个⼯作表,⼯作表可通过索引或名字访问。
⼀个⼯作表包含多⾏、多列,⾏列交叉位置的基本单元就是单元格,内容都写⼊在单元格中。单元格可通过⾏、列索引访问。
另外,可对单元格内容的格式进⾏设置,包括类型(⽇期等)、字体、颜⾊等。
下⾯介绍xlrd模块读取excel表格。
打开表格(⼯作簿):
wb = xlrd.open_workbook('1.xls') #打开excel表格1.xls
读取⼯作表:
wb.sheets() #返回⼯作表(sheet)实例构成的list,可通过索引读取⼯作表
或 ws = wb.sheet_by_name('xxx') #通过名字打开⼯作簿
或 ws = wb.sheet_by_index(i) #通过编号(索引,从0开始)打开⼯作表
读取单元格内容:
注意xlrd读取excel⼯作簿的⾏、列索引都是从0开始。
row = ws.row_values(i, ca, cb) #读取第i⾏中[ca, cb)列内容,返回list。注意不含第cb列
或 col = ws.col_values(i, ra, rb) #读取第i列中[ra, rb)⾏内容,返回list。注意不含第rb⾏
或 cell= ws.cell_value(r, c) #读取第i⾏第j列单元格内容
单元格数据格式转换:
cell = xlrd.xldate_as_datetime(cell,0) #对excel的⽇期格式单元格,xlrd读⼊的是浮点数,可通过xldate_as_datetime()转为datetime.datetime⽇期格式实例。
或 cell = xlrd.xldate_as_tuple(cell,0) #转为⽇期tuple(year,month,day,hour,min,second),注意1≤cell≤60时,xldate_as_tuple()报错XLDateAmbiguous,也即1900-3-1之前的⽇期⽆法转为tuple。
下⾯介绍xlwt模块写⼊excel表格。
新建表格(⼯作簿):
wb = xlwt.Workbook() #新建⼀个空的表格,⽤于写⼊
新建⼯作表:
ws = wb.add_sheet('Sheet1') #在表格中建⽴Sheet1⼯作表
python怎么读取xls文件
写⼊单元格内容:
注意xlwt读取excel⼯作簿的⾏、列索引也是从0开始。
ws.write(r, c, content, style) #在ws⼯作簿实例的第r⾏第c列单元格中写⼊内容content,并按照指定数据格式style(xlwt.XFStyle实例)写⼊(⽐如⽇期、字体等)
设定单元格数据格式:
mf = xlwt.XFStyle() #返回⽤于设定单元格格式的实例
mf.num_format_str = 'yyyy/mm/dd' #将数字转换为⽇期格式
mf.font = '宋体' #设置字体
需在ws.write()时指定style实例才能⽣效。
保存表格:
wb.save('1.xls') #保存以上表格实例到1.xls
注意只能写⼊.xls表格,不能写⼊.xlsx表格(写⼊后⽆法打开)。
看完了吗,是不是很⽅便,⼏天的⼯作量⼀下⼦就可以搞定!返回搜狐,查看更多
责任编辑:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。