openpyxl操作excel
【转】
openpyxl库可以读写xlsx格式的文件,对于xls旧格式的文件只能用xlrd读,xlwt写来完成了。
python有很多模块都是用来操作excel的,比如xlrd,xlwt,pyExcelerator。用着很方便,但是问题是,只能支持到 excel2003。虽然一般的应用其实足够了,但是如果遇到了导出大量数据(超过65535条)的需求时,excel2003就不够用了。所以我就只好 去找一个能支持excel2007的模块,google了一下,发现了这个openpyxl。
创建一个工作簿
wb = workbook()
加载已存在excel文件
filePath = "/data/alic/demo.xlsx"
wb = load_workbook(filename=filePath)
选中sheet
# 选择默认的sheet
ws = wb.active # 通过索引加载sheet index从0开始
ws = wb.worksheets[index] # 通过sheet名加载 感觉有问题,中文?
ws = wb.get_sheet_by_name()
# 这个没有问题
ws = wb["name"]
创建sheet
#默认插在工作簿末尾
ws = wb.create_sheet()
# or
# 插入在工作簿的指定位置位置 index从0开始
ws = wb.create_sheet(index)
更改sheet的名字
# 新建默认的话 sheet0 sheet1 ...
ws.title = "hello"
获取sheet的名称
sheet_name = wb.get_sheet_names()
print sheet_name
# or
for sheet in wb:
print sheet.title
单元格操作
# 获取一个单元格的value
value = ws['B2']
# or
value = ws.cell('B2')
# or 非常推荐 遍历都很方便
value = ws.cell(row=1,column=2) #获取多个单元格
cells = ws['A1':'E4'] #为一个单元格赋值
ws['B2'] = "alic"
# or
ws.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
获取当前工作表的已有数据的对象
# 所有行
ws.rows # 所有列
ws.columns
获取当前工作表的数据长度与宽度
row_length = len(ws.rows)
cloumn_length = len(ws.columns)
# 推荐 centOS上面的会报错
row-length = len(list(ws.rows))
cloumn_length = len(list(ws.rows))
保存文件
# 注意要是加载进来的路径与保存的路径一致文件将会被覆盖
wb.save(path) # 也可以将文件作为模板保存 as_template默认为False
wb.save('document_template.xltx', as_template=True)
简单的样式处理
# 文本对齐方式
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
openpyxl操作excel的更多相关文章
- python openpyxl 操作 excel
初识与安装 Openpyxl is a Python library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files. 安装 ...
- python用openpyxl操作excel
python操作excel方法 1)自身有Win32 COM操作office但讲不清楚,可能不支持夸平台,linux是否能用不清楚,其他有专业处理模块,如下 2)xlrd:(读excel)表,xlrd ...
- python通过openpyxl操作excel
python 对Excel操作常用的主要有xlwt.xlrd.openpyxl ,前者xlwt主要适合于对后缀为xls比较进行写入,而openpyxl主要是针对于Excel 2007 以上版本进行操作 ...
- 用python库openpyxl操作excel,从源excel表中提取信息复制到目标excel表中
现代生活中,我们很难不与excel表打交道,excel表有着易学易用的优点,只是当表中数据量很大,我们又需要从其他表册中复制粘贴一些数据(比如身份证号)的时候,我们会越来越倦怠,毕竟我们不是机器,没法 ...
- python使用openpyxl操作excel总结
安装openpyxl pip install openpyxl 简单示例 from openpyxl import Workbook #创建一个工作薄对象,也就是创建一个excel文档 wb = Wo ...
- Python使用openpyxl操作excel表格
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 ht ...
- python库openpyxl操作excel
废话不多说,看代码,不懂的留言. from openpyxl import * class ExcelUtil: ''' 读取excel文件内容''' def create_work_book(sel ...
- Python学习笔记_使用openpyxl操作Excel,在同一个文件里复制某一个sheet
应用场景:定制一个Excel模板文件,其中定义了一个模板Sheet,以此模板文件里的模板sheet为样例,制作报表,里面有不止一个模板样例Sheet 一.软件环境: 1.OS:Win10 64位 2. ...
- 利用Python openpyxl操作Excel
from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = ...
随机推荐
- TJOI2014
匹配 给出一个\(n(n\leq80)\)个点对\(n\)个点的带权二分图,求所有最大权匹配的交集. 先求出一个最大权匹配,然后枚举每一条匹配中的边,检验删除该边后是否还能形成最大权匹配.如果能则说明 ...
- 洛谷P1244 青蛙过河
P1244 青蛙过河 362通过 525提交 题目提供者该用户不存在 标签 难度普及- 时空限制1s / 128MB 提交 讨论 题解 最新讨论更多讨论 题目什么意思 题目看不懂啊 题目描述 有一条河 ...
- tree(poj 1741)
题意:给一颗n个节点的树,每条边上有一个距离v(v<=1000).定义d(u,v)为u到v的最小距离.给定k值,求有多少点对(u,v)使u到v的距离小于等于k. /* 照着点分治模板敲了敲,有很 ...
- 【收藏】实战Nginx与PHP(FastCGI)的安装、配置与优化
拜读南非蚂蚁大牛的文章真是有所收获 http://ixdba.blog.51cto.com/2895551/806622 一.什么是 FastCGI FastCGI是一个可伸缩地.高速地在HTTP s ...
- 【cmd】cmd常用命令
dir 是英文单词directory(目录)的缩写,主要用来显示一个目录下的文件和子目录 md 是英文make directory(创建目录)的缩写 cd 是英文change directory( ...
- Intersection--poj1410(判断线段与矩形的关系)
http://poj.org/problem?id=1410 题目大意:给你一个线段和矩形的对角两点 如果相交就输出'T' 不想交就是'F' 注意: 1,给的矩形有可能不是左上 右下 所以要先判 ...
- 临远大神,你为啥要建立一个 TASK表。HumanTaskDTO
临远大神,你为啥要建立一个 TASK表.HumanTaskDTO HumanTask这张表的作用是什么. 为了实现理想中的任务中心.TaskCenter. 首先,工作流可能会完全不包含任何人工节点,全 ...
- DB 查询分析器 6.03 ,遨游于不论什么Windows操作系统之上的最棒的数据库client工具
DB 查询分析器 6.03 ,遨游于不论什么Windows操作系统之上的最棒的数据库client工具 中国本土程序猿马根峰(CSDN专訪马根峰:海量数据处理与分析大师的中国本土程序猿 .03版本 ...
- Linux bash介绍与使用
Linux————bash的简单使用 对于一个操作系统来说,shell相当于内核kernel外的一层外壳,作为用户接口.一般来说,操作系统的接口分为两类:CLI:command line interf ...
- Mac下Git项目使用的.gitignore文件
https://www.gitignore.io/ 这个网站可以搜索特定项目.系统所需要的.gitignore 我现在主要是在Mac上用Visual Studio Code进行开发,所以直接搜索Mac ...