python导入excel模块_python使用openpyxl模块操作excel
python中的openpyxl模块可以操作excel文件。
使用pip安装pip install openpyxl
支持流行的lxml库(如果已安装)。这在创建大文件时特别有用。
为了能够将图像(jpeg,png,bmp等)包含到文件中,需要安装'pillow'库:pip install pillow
1、创建一个excel对象
import openpyxl
wb=openpyxl.Workbook() #创建一个新的空白excel对象
wb=openpyxl.load_workbook('file_name.xlsx') # 打开一个已存在的文件
获取打开的excel对象中所有的工作表(新的空白excel对象默认有一个名称为"Sheet"的工作表):
1>wb.sheetnames:获取所有工作表的名称的列表
2>for sheet in wb:
print(sheet.title)
2、创建新的工作表
wb.create_sheet(title=None, index=None)
title为新创建的工作表名称
index为新的工作表插入的位置,默认插到末尾
3、打开工作表
ws=wb.active #打开第一个工作表对象
ws=wb[titme] #工作表的title可以作为key进行索引
ws=wb.get_sheet_by_name(title) #通过工作表的title打开
获取最大行,最大列
sheet.max_row
sheet.max_column
设置行高和列宽:
ws.row_dimensions[rowx].height = height_num
ws.column_dimensions['C'].width = width_num
合并和拆分单元格:
merge_cells(range_string=None, start_row=None, start_column=None, end_row=None, end_column=None)
方法1:ws.merge_cells('A1:C3') #合并一个矩形区域中的单元格
方法2:ws.merge_cells(start_row=None, start_column=None, end_row=None, end_column=None)
由于省略了第一个参数,后面的参数要使用关键字
merge_cells(range_string=None, start_row=None, start_column=None, end_row=None, end_column=None)
使用方法同上
改变工作表按钮颜色
ws.sheet_properties.tabColor = "1072BA"
删除工作表
wb.remove(sheet)
del wb[sheet_name]
4、读取或修改单元格
4.1:单一单元格
cl1= ws['B6'] #直接通过索引获取单元格对象
cl2 = ws.cell(rowx, colx, value=None) #通过行和列获取单元格对象,如果提供了value值,则同时更改该单元格值
获取到单元格对象之后通过属性column、row、is_date、font、value、aligment、border等属性获取和修改相关值
设置字体样式:
ws['B6'].font=openpyxl.styles.Font(name='字体名称',size=数字字号, italic=是否斜体, color='16进制颜色', bold=是否加粗)
设置文字对齐方式:
ws['B6'].alignment=openpyxl.styles.Alignment(horizontal="水平对齐",vertical="垂直对齐",text_rotation=旋转角度,wrap_text=是否自动换行)
horizontal可能的值:左对齐left、居中center、右对齐right、分散对齐distributed、跨列居中centerContinuous、两端对齐justify、填充fill、常规general
vertical可能的值:居中center、还可以靠上top、靠下bottom、两端对齐justify、分散对齐distributed
wrap_text参数还可以写成wrapText
设置单元格边框样式:
side1=openpyxl.styles.Side(style="dotted",color="16进制颜色")
side2=openpyxl.styles.Side(style="thin",color="16进制颜色")
style可能的值'double', 'dashed', 'medium', 'dashDot', 'dashDotDot', 'mediumDashed', 'thin', 'thick', 'slantDashDot', 'hair', 'mediumDashDotDot', 'mediumDashDot', 'dotted'
ws['B6'].border = openpyxl.styles.Border(left=side1,right=side1,top=side2,bottom=side2)
4.2:多单元格
cell_list1 = ws['A1':'C2'] #使用类似切片的方式获取所有单元格对象列表
cell_list2 = ws['C'] # 获取C列(第三)列的所有单元格对象列表
cell_list3 = ws['C:E'] # 获取C列到E列(C列、D列、E列)的所有单元格对象列表
cell_list4 = ws[10] #获取第10行的所有单元格对象列表
cell_list5 = ws[5:10] #获取第5行到第10行的所有单元格对象列表
cell_list6 = ws.iter_rows(min_row=None, max_row=None, min_col=None, max_col=None, values_only=False)
返回指定范围的所有单元格对象,返回格式中每行为一个元祖,然后由这些元祖组成列表,min_*不提供默认为1
4.3:获取所有单元格
all_sell1=ws.rows #返回所有单元格对象,返回格式中每行为一个元祖,然后由这些元祖组成列表
all_sell2=ws.columns #返回所有单元格对象,返回格式中每列为一个元祖,然后由这些元祖组成列表
5、保存成文件
wb.save('file_name.xlsx')
其他操作
1、添加一行到当前sheet的最底部
append(['This is A1', 'This is B1', 'This is C1'])
如果是list,将list从头到尾顺序添加
append({'A' : 'This is A1', 'C' : 'This is C1'})
如果是dict,按照相应的键添加相应的键值
2、根据列数字得到字母,根据字母得到列数字
openpyxl.utils.get_column_letter(num)
openpyxl.utils.column_index_from_string(str)
最后编辑:2020-03-04作者:qingheluo
这个作者貌似有点懒,什么都没有留下。
python导入excel模块_python使用openpyxl模块操作excel相关推荐
- python 导入包 作用域_Python 包、模块、函数、变量作用域
Python 项目的组织结构 - 包 -- 模块 --- 类 ---- 函数.变量 Python是利用包和模块来组织一个项目的. 包: 包的物理表现是一个文件夹,但是一个文件夹却不一定是个包,要想让个 ...
- python openpyxl模块安装_python之openpyxl模块
一 . Python操作EXCEL库的简介 1.1 Python官方库操作excel Python官方库一般使用xlrd库来读取Excel文件,使用xlwt库来生成Excel文件,使用xlutils库 ...
- python 通过openpyxl来操作Excel文件(一 ):读取Excel文件
这篇文章讲python 通过openpyxl来读取Excel文件 不清楚怎么通过openpyxl来写入Excel文件的小伙伴可以看我另一篇文章 传送门python 通过openpyxl来操作Excel ...
- python 通过openpyxl来操作Excel文件(二 ):写入Excel文件
这篇文章讲python 通过openpyxl来写入Excel文件,不清楚python怎么读取Excel文件的小伙伴可以去看下我的另一篇文章 传送门https://blog.csdn.net/i_cof ...
- java excel api 下载文件_Java-Excel Java操作Excel POI(Jakarta POI API) - 下载 - 搜珍网
Java操作Excel/Jakarta POI API/data/Jakarta POI API.doc Java操作Excel/Jakarta POI API/jar/poi-3.0.2-FINAL ...
- python模块xlwt怎么用不了_python中使用 xlwt 操作excel的常见方法与问题
前言 python可以操作excel的模块不止一种,我习惯使用的写入模块是xlwt(一般都是读写模块分开的) python中使用xlwt操作excel非常方,和Java使用调框架apache poi相 ...
- python导入同级包_python小课堂15 - 史上最详细的包和模块import讲解篇
python小课堂15 - 史上最详细的包和模块import讲解篇 前言 在大量的代码设计中,我们不可能将所有代码都写在一个.py文件,所以有了包.模块,而为了代码可以重复利用(复用性),就有了类.函 ...
- python的主要应用领域及常用的函数模块_python之常用模块篇5
一.日志模块,logging模块 1)logging模块简单使用,屏幕输出.默认级别30 import logging logging.debug('debug...') # 10logging.in ...
- python xlrd模块_python之xlrd模块
xlrd模块 一.xlrd模块 1.python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库,这两个适用于.xls格式有效 2. xlrd模块 ...
最新文章
- Color the ball(HDU1556)树状数组
- 2019年安徽省模块七满分多少_二级造价考情分析:20年二级造价考试还有戏吗?...
- rm 空间不释放_rm删除文件之后,空间就被释放了吗?
- 编码格式经典书籍--代码整洁之道
- 【采用】【科技金融】CART树现金贷风控策略
- 微软开源Visual Studio测试平台VSTest
- Bolt XML和JQBolt Lua代码自动补全插件配置教程
- Oracle数据库 - 安装教程
- js 56个民族 数据
- openlayers学习——13、openlayers比例尺
- linux下多节点之间免密钥访问
- c语言实现小球跳动的效果
- 商业方向的大数据专业_工业大数据应用的三大挑战和五大商业趋势
- 【EasyExcel导入、导出(百万数据量测试)粘贴即用】
- 软件测试需要什么思维,做软件测试需要学习什么
- 几种常见代码管理工具比较(2009)
- 图像属性:格式、尺寸、分辨率、通道数、颜色空间
- Spring下载教程(保姆级)
- 借用smtp.qq.com发邮件
- DM9000AEP/CEP 技术文件
热门文章
- 换了一种管用pip安装方法,还有管用的python版hdf5(包名为h5py)安装方法
- 杭电2100Lovekey
- unsigned char bcd串乱码问题解决
- bliss android x86,Bliss OS现在可让您基于Android-x86和AOSP在PC上运行Android 10
- 随想录(搭建自己嵌入式项目的编译系统)
- python编程(深拷贝和浅拷贝)
- python编程(类的释放)
- 随想录(内存屏障示例代码)
- linux系统 安卓系统安装教程,Linux系统下安装android sdk的方法步骤
- 数据库系统由计算机硬件软件,集美大学计算机工程学院数据库软件04B卷答案.doc...