还是简单一句:顾名思义,openpyxl就是一个处理excel文档的一个python库。
openpyxl信息
openpyxl地址传送
openpyxl依赖jdcal以及et_xmlfile依赖库
jdcal地址
et_xmlfile地址
openpyxl安装
1234 | #pip安装sudo pip install openpyxl#源码编译python setup.py install |
对于如何使用pip安装传送pip教程,源码编译安装呢,下载路径已经在上面了
每次编辑到关于安装的好浪费时间,but~~
创建一个工作簿
1 | wb = workbook() |
加载已存在excel文件
12 | filePath = \”/data/alic/demo.xlsx\”wb = load_workbook(filename=filePath) |
选中sheet
12345678910 | # 选择默认的sheetws = wb.active # 通过索引加载sheet index从0开始ws = wb.worksheets[index] # 通过sheet名加载 感觉有问题,中文?ws = wb.get_sheet_by_name()# 这个没有问题ws = wb[\”name\”] |
创建sheet
12345 | #默认插在工作簿末尾ws = wb.create_sheet() # or# 插入在工作簿的指定位置位置 index从0开始ws = wb.create_sheet(index) |
更改sheet的名字
12 | # 新建默认的话 sheet0 sheet1 …ws.title = \”hello\” |
获取sheet的名称
12345 | sheet_name = wb.get_sheet_names()print sheet_name# orfor sheet in wb: print sheet.title |
单元格操作
123456789101112131415161718192021 | # 获取一个单元格的valuevalue = ws[\’B2\’]# orvalue = ws.cell(\’B2\’)# or 非常推荐 遍历都很方便value = ws.cell(row=1,column=2) #获取多个单元格cells = ws[\’A1\’:\’E4\’] #为一个单元格赋值 ws[\’B2\’] = \”alic\”# orws.cell(\’B2\’) = \”hello\”# or 非常推荐 遍历都很方便ws.cell(row=1,column=2) = \”value\” # 遍历多个单元格for row in ws.iter_rows(\’A1:D2\’): for cell in row: print cell |
获取当前工作表的已有数据的对象
12345 | # 所有行ws.rows # 所有列ws.columns |
获取当前工作表的数据长度与宽度
12345 | row_length = len(ws.rows)cloumn_length = len(ws.columns)# 推荐 centOS上面的会报错row–length = len(list(ws.rows))cloumn_length = len(list(ws.rows)) |
保存文件
12345 | # 注意要是加载进来的路径与保存的路径一致文件将会被覆盖ws.save(path) # 也可以将文件作为模板保存 as_template默认为Falsewb.save(\’document_template.xltx\’, as_template=True) |
简单的样式处理
1234567 | # 文本对齐方式align = Alignment(horizontal=\’center\’, vertical=\’center\’)ws.cell(row=deng_lu_taskRow, column=index + 3).alignment = align # 字体大小font = Font(size=10)ws.cell(row=taskRow, column=column).font = font |
具体样式Click
上一篇:Python中如何创建mock?
下一篇:自动化运维之playbook