python打开xlsx文件,Python打开xls
详细内容
最近看到群里有人问了好几次关于xlwt和wlrd的问题。怎么说呢?如果office2007刚出来,人们不习惯使用xlsx文件是可以理解的。已经10年过去了。哎,就算没进化到office2016,还用office2003也有点说不过去。有人可以用xlsx存成xls!3354故意多做几步。目的是什么?为了兼容性?兼容旧office2003?而且由于我们都是用python来操作excel,所以又要手动保存文件。是什么想法?
所以,我还是觉得应该抛弃xls,转型xlsx。这就是为什么这篇文章——xlwt,wlrd只能读写xls文件,不能操作xlsx文件。
解决方案:openpyxl。这是一个非常简单的库,可以在几分钟内使用。安装非常简单。pip安装openpyxl一步完成。我主要说一下excel的操作。当然,前面这么多废话,同学们差不多都能猜到。openpyxl只能操作xlsx文件,不能操作xls文件。
1.基本概念
在openpyxl中,主要使用三个概念:工作簿、工作表和单元格。工作簿是excel工作表;工作表是工作表中的工作表页;细胞是一个简单的细胞。Openpyxl围绕这三个概念,读写是“三轴”:打开工作簿、定位工作表、操作单元格。下面分别介绍几种常见的读写方法。
2.阅读xlsx
为了做实验,我事先准备了一个excel文档,里面有三页:Sheet1、Sheet2、Sheet3,在Sheet3中填写了以下内容:
使用from openpyxl先导入load _ workbook。
介绍库WB=load _ workbook( template . xlsx )
打开xlsx文件print (wb.sheetnames) # [sheet1 , sheet2 , sheet3]
可以看到打开的Excel中哪些工作表是sheet=WB . get _ sheet _ by _ name( sheet 3 )。
阅读指定的单页,单就变得神奇了。所有想要的内容都在这里。例如:print(sheet[C]) #(,)
print(工作表[4]) #(,)
打印(纸张[C4]。值)# c4
打印(sheet.max_row) # 10
打印(sheet.max_column) # 5
对于表[C]中的I:
print(i.value,end= ) # c1 c2 c3 c4 c5 c6 c7 c8 c9 c10
写xlsx
首先,从OpenPyXL导入工作簿
wb=工作簿()
创建一个工作表,然后sheet=wb.active
找到了活动工作表页。空excel表格的默认工作表页称为工作表。如果要更改名称,可以直接给title属性赋值。新狗屎
此属性是可读和可写的。当然这只针对当前活动页面,其他页面可以通过使用create_sheet和remove_sheet来添加和删除。
更容易写入表页,就像上面读的一样,sheet[C3]=Hello world!
对于范围(10)内的I:
工作表[A%d % (i 1)]。值=i 1
我们还可以做花式操作,比如写公式:sheet[E1]。value==SUM(A:A)
最后,记得保存wb.save(保存一个新的excel.xlsx )
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。