打算在csdn上记录下我的python学习历程,虽然是非软件计科的,但是学好这门语言将来肯定会非常有用哒。
for the record, 我用的是anaconda中的Spyder3.6.0,最近好像更新了,但是不知道是因为国内镜像没有及时更新还是什么,一致没法通过从conda来update。。。
啊我前两天看了看有关xlrd、xlwt、wlutils的库,然后有关他们的复习我之后再放上来吧。今天先做openpyxl的学习。
openpyxl的原版doc如下:点击打开链接,介绍的还是挺详细的,有空一起看一看吧。库的安装什么就不记了吧。
我把xl理解成一个父类(workbook,acro:wb),下属有多个子类(worksheet,acro:ws),由分别各自下属好多个单元格(cell)
openpyxl只能用来操作xlsx。。。相当于是和前面3个库互补了吧。
#约定 import openpyxl as opx
一:workbook 的创建与操作
将excel实例如“testing.xlxs”具体化为对象
对于已经存在的xlxs,用如下来引入
wb=openpyxl.load_workbook('testing.xlxs')
对于新创建一个xlxs,如下
wb=openpyxl.Workbook('new_testing.xlxs')
该二者返回的都是一个workbook对象,用于提取表来操作
其中workbook的属性和方法如下:
wb.active:获取当期使用的worksheet(默认为sheet1)
wb.properties:获取该wb的一系列数据:
Parameters:
creator='郑行健', title=None, description=None, subject=None, identifier=None, language=None, created=datetime.datetime(2018, 4, 30, 2, 9), modified=datetime.datetime(2018, 4, 30, 2, 10, 23), lastModifiedBy='Administrator', category=None, contentStatus=None, version=None, revision=None, keywords=None, lastPrinted=None
wb.encoding:返回该文档的编码,一般为utf-8
二:workbook中有关worksheet的方法
wb.提取worksheet的方法怪怪的,有一个是:wb['sheet_name'],但是只是使用简单地提及该表,并未切换到该sheet_name
#过会看到了之后再回来补充
remove_sheet:删除一个表格 #经测试会出现一个“not in list”的错误,怪怪的
create_sheet(title='name'):创建个空的表格
copy_worksheet:在Workbook内拷贝表格
三:worksheet对象
title:标题
dimensions:含有数据的sheet的大小
max_row,min_row:最大小行
max_column,min_column:最大小列
freeze_panes:冻结窗格 #这又是什么啊
四:worksheet方法
iter_rows:按行获取所有单元格,内置属性有iter_rows.(min_row=,max_row=,min_col=,max_col=)
同理,还有iter_columns:按列获取所有的单元格
#在这里还需要补全
五:cell对象
wb.['sheet_name'].cell()
wb['sheet21'].cell(row=5,column=4).coordinate
Out[71]:
Out[76]: 'D5'
|
其中包含有属性:
row:单元格所在列
column:单元格的值
coordinate:坐标