openpyxl作为excel众多的一员,具有简单易用,功能广泛的特点。
-
环境:
win 10
python 3.6
pip 9.0.1
openpyxl 2.4.8
-
安装openpyxl
打开cmd命令行,输入pip install openpyxl,回车执行命令。
-
学习
-
创建excel文件(Create a workbook)
-
首先导入openpyxl库中的Workbook
from openpyxl import Workbook wb = Workbook()
-
-
创建worksheet(Create sheet)
-
ws = wb.create_sheet(title='math',index=0)
参数说明:
title,定义sheet名称;
index,定义新建sheet的排序位置。该参数省略时,新建的sheet添加到最后。
-
访问单元格(Accessing one cell)
#method1 ws['A4'] = 4 #method2 d = ws.cell(row=4, column=2, value=10)
访问单元格的方法同excel,使用A1,B12的方法即可
-
访问单元块(Accessing many cells)
#method1 cell_range = ws['A1':'D2'] #method2 ws.iter_rows(min_row=1,max_row=3, min_col=2,max_col=3) #选定A1:C3的单元块
-
-
数据存储(data storage)
-
c = ws['A12'] c.value = 'hellos'
-
-
保存文件(save file)
-
wb.save('balances.xlsx')
-
-
加载文件
-
from openpyxl import load_workbook wb = load_workbook('..//..//file//math.xlsx') print(wb.get_sheet_names())
-
学以致用
from openpyxl import Workbook #新建一个workboot wb = Workbook() #创建一个sheet,sheetname是math,放在第一个位置 ws = wb.create_sheet('math',0) m = 0 #使用访问单元块的方法,在遍历的同时进行单元格的赋值 for row in ws.iter_rows(min_row=1,max_row=9,min_col=1,max_col=9): #for row in ws['A11':'I19']: m=m+1 n = 0 for cell in row: n=n+1 cell.value=m*n wb.save('..//..//file//math.xlsx')
使用访问单元块的方法,实现99乘法表,执行的结果如下:
-
参考资料
https://openpyxl.readthedocs.io/en/latest/tutorial.htm
-
补充说明
在查看资料时,还发现了一篇文章,比较了多种excel库,很好的文章,留看。
http://www.jianshu.com/p/be1ed0c5218e
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/195322.html