xlwt模块只能写xls文件,不能写xlsx文件(写xlsx程序不会报错,但最后文件无法直接打开,会报错)。而pandas即可处理xls文件、也可处理xlsx文件。

12 篇文章 1 订阅
5 篇文章 0 订阅

xlwt模块只能写xls文件,不能写xlsx文件(写xlsx程序不会报错,但最后文件无法直接打开,会报xlwt模块只能写xls文件,不能写xlsx文件(写xlsx程序不会报错,但最后文件无法直接打开,会报错)。而pandas即可处理xls文件、也可处理xlsx文件。

@@ 二维的DataFrame来表示表格式的数据,相比较于Numpy,Pandas可以存储混合的数据结构,同时使用NaN来表示缺失的数据,而不用像Numpy一样要手工处理缺失的数据,并且Pandas使用轴标签来表示行和列。

 @@@ Python xlrd/xlwt 处理excel文件(xls和xlsx) - TonyX2 - 博客园 (cnblogs.com)

二、openpyxl模块

openpyxl模块可实现对excel文件的读、写和修改,只能处理xlsx文件,不能处理xls文件,使用之前同样需要先安装该模块,再导入 import openpyxl。

对于openpyxl,行数和列数都从1开始,单元格的行和列也从1开始。例如sheet.cell(1,2).value表示第一行第二列单元格的内容

1.openpyxl读取excel文件

获取工作簿对象:book = openpyxl.load_workbook('excel文件名称')

获取所有工作表名称:names = book.sheetnames

获取工作表对象:sheet1 = book.worksheets[n]、sheet2 = book['工作表名称']、sheet3 = book[book.sheetnames[n]]

获取工作表名称:title = sheet1.title

获取工作表行数:rows = sheet1.max_row

获取工作表列数:cols = sheet1.max_column

获取某一单元格内容:cell = sheet.cell(1,2).value、sheet['单元格'].value例如sheet['B1'].value

假设有一fruit2.xlsx,除后缀名其他与上述fruit.xls完全一样

获取单元格的内容

print(sheet.cell(1,2).value)  #第一行第二列单元格的内容
print(sheet['a2'].value)  #使用excel单元格的表示法,字母不区分大小写

3.openpyxl写excel文件 

创建工作簿:book = openpyxl.Workbook(),如果写入中文为乱码,可添加参数encoding = 'utf-8'

创建工作表:sheet = book.create_sheet('工作表名称',0),0表示创建的工作表在工作薄最前面

向单元格写入内容:sheet.cell(m,n,'内容1')、sheet.cell(x,y,'内容2')

保存工作簿:book.save('excel文件名称'),默认保存在py文件相同路径下,如果该路径下有相同文件,会被新创建的文件覆盖。

@@@ pandas处理excel文件和csv文件 - Forever77 - 博客园 (cnblogs.com)

@@@ Python Pandas 遍历DataFrame的正确姿势 速度提升一万倍 - 知乎 (zhihu.com)

@@@ 简单两步,大幅提高python数据处理速度 - 知乎 (zhihu.com)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值