时间:2021-05-22
一.相关说明:
1、openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件;2007一下的版本为xls结尾的文件,需要使用 xlrd和xlwt库进行操作
2、excel表的文字编码如果是“gb2312” 读取后就会显示乱码,请先转成Unicode
3、workbook: 工作簿,一个excel文件包含多个sheet。
4、sheet:工作表,一个workbook有多个,表名识别,如“sheet1”,“sheet2”等。
5、cell: 单元格,存储数据对象
二.openpyxl的使用方法
1. 新建
import openpyxl# 新建一个空excel,表名为sheet,文件名为testwb = openpyxl.Workbook() # 创建新的excel文件,一个工作簿(workbook)在创建的时候同时至少也新建了一张工作表(worksheet)wb.save('test.xlsx')2.表操作
注:从此操作往后都使用如下的测试数据
import openpyxlimport openpyxl.styles# 打开已有的excelwb = openpyxl.load_workbook("test.xlsx")# ------------------ 表操作 ------------------# 新建sheet表wb.create_sheet(index=2, title="sheet3") # 可通过index控制创建的表的位置# 获取所有表名sheet_names = wb.sheetnames # 得到工作簿的所有工作表名 结果: ['Sheet1', 'Sheet2', 'Sheet3']# 根据表名删除sheet表wb.remove(wb[sheet_names[2]]) # 删除上一步建的第3个工作表# 根据表名打开sheet表sheet1 = wb[sheet_names[0]] # 打开第一个 sheet 工作表3.读取数据
# ------------------ 读取数据 ------------------# 获取单元格数据sheet1_max_colum = sheet1.max_column # 获取最大列数 结果:3# ws = wb.active # 获取当前活动的sheet页sheet1_max_row = sheet1.max_row # 获取最大行数 结果:10A1_value = sheet1['A1'].value # 获取单元格A1值 结果:a1A1_column = sheet1['A1'].column # 获取单元格A1列值 结果: AA1_row = sheet1['A1'].row # 获取单元格A1行号 结果: 1A1 = sheet1.cell(row=1, column=1).value # 获取第一行第一列的单元格值 结果:a1# 获取C列的所有数据list_sheet1_column_C = []for i in sheet1["C"]: list_sheet1_column_C.append(i.value)# 获取第1行的所有数据list_sheet1_row_1 = []for i in sheet1[1]: list_sheet1_row_1.append(i.value)# 读取所有数据list_sheet1_all = []for row in sheet1.rows: for cell in row: list_sheet1_all.append(cell.value) # 按行循环获取所有的值,保存在 list_sheet1_all 列表中4.写入数据
# ------------------ 写入数据 ------------------sheet1.cell(row=1, column=2, value="B1") # 修改第一行第二列的单元格的值为B1sheet1["A1"] = "A1" # 直接修改A1单元格的值为A1sheet1["B11"] = "B11" # 新增B11单元格的值为B11sheet1.title = "test_sheet" # 修改sheet1的表名为test_sheet5.表格样式调整
# ------------------ 表格样式调整 ------------------# 表格样式支持:字体、颜色、模式、边框、数字格式等# A1单元格 等线24号加粗斜体,字体颜色浅蓝色sheet1["B11"].font = openpyxl.styles.Font(name="宋体", size=24, italic=True, color="00CCFF", bold=True)# B1单元格 水平上下居中sheet1["B11"].alignment = openpyxl.styles.Alignment(horizontal="center", vertical="center")# 第一行高度设置为30sheet1.row_dimensions[1].height = 30# C列的宽度设置为35sheet1.column_dimensions["C"].width = 356.保存文件
# 保存文件,注意文件打开时文件保存会出错wb.save("test.xlsx")补充:下面通过实例代码看下python3 openpyxl基本操作,具体代码如下所示:
总结
以上所述是小编给大家介绍的python3结合openpyxl库实现excel操作,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
大家好,给大家分享下如何使用Python脚本操作Excel实现批量替换。使用的工具Openpyxl,一个处理excel的python库,处理excel,其实针对
摘要:Openpyxl是一个常用的python库,用于对Excel的常用格式及其模板进行数据读写等操作。简介与安装openpyxl库OpenpyxlisaPyt
本文实例讲述了Python实现连接MySql数据库及增删改查操作。分享给大家供大家参考,具体如下:在本文中介绍Python3使用PyMySQL连接数据库,并实现
本文实例为大家分享了python3连接MySQL数据库的具体代码,供大家参考,具体内容如下#python3连接MySQL实例importpymysql"""导入
使用python中的pandas,xlrd,openpyxl库完成合并excel中指定sheet的操作#-*-coding:UTF-8-*-importxlrd