python中Excel文件处理库-openpyxl的使用

python中Excel文件处理库-openpyxl的使用,第1张

概述一、认识Excel文件Excel文件也被称做工作簿(workbook)。每个工作簿可以包含多个工作表(sheet)。用户当前查看的表或关闭Excel前最后查看的表,被称为活动表。每张表都是由行和列组成。列是以A开始的字母表示,行是以1开始的数字表示。由特定行和列所指定的方格被称为单元格(cell)。每个 一、认识Excel文件Excel文件也被称做工作簿(workbook)。每个工作簿可以包含多个工作表(sheet)。用户当前查看的表或关闭Excel前最后查看的表,被称为活动表。每张表都是由行和列组成。列是以A开始的字母表示,行是以1开始的数字表示。由特定行和列所指定的方格被称为单元格(cell)。每个单元格都可以包含一个数字或文本,这些单元格就构成了这张表。二、安装openpyxl库
pip install openpyxl
三、创建Excel文件
from openpyxl import Workbookwb = Workbook() wb.save('test.xlsx') 
四、读取Excel文件
from openpyxl import load_workbookwb = load_workbook('test.xlsx')
五、表 *** 作
#创建表sheet = wb.create_sheet(Title,index) #Title指定表名,可选,index可以适当指定表的位置,index从0开始#获取所有表名sheet_name_List = wb.sheetnames #返回所有表名的一个列表#获取表sheet = wb['表名'] #根据表名获取sheet = wb.active #获取活动表#获取表名sheet_name = sheet.Title#修改表名sheet.Title = '新表名'#获取表大小max_row = sheet.max_row #获取表最大行数,最小值1max_column = sheet.max_column #获取表最大列数,最小值1#如果表中没有数据,则最大行号和列号均为1#删除表wb.remove(sheet)del wb['表名']
六、单元格 *** 作
#获取单元格cell_B3 = sheet['B3'] #根据坐标获取cell_B3 = sheet.cell(row = 3,column = 2) #通过cell方法指定行号和列号来获取#单元格赋值sheet['B3'] = 'B3' #直接给单元格赋值cell_B3.value = 'B3' #通过单元格的value属性赋值#使用公式sheet['B3'] = '=AVERAGE(A1:B2)' #使用公式赋值,读取文件的时候,需要设置load_workbook()的参数data_only=True才能读取到数值,,否则读取到的是字符串'=AVERAGE(A1:B2)'本身,其它公式如SUM、MAX等 *** 作也是这种格式,里面的坐标指的是单元格所组成矩形区域的左上角和右下角#获取单元格中的值及属性value = sheet['B3'].value #取值--'B3'row = sheet['B3'].row #取行号-- 3column = sheet['B3'].column #取列号 -- 2column_letter = sheet['B3'].column_letter # 取列名 -- 'B'coordinate = sheet['B3'].coordinate #取坐标 --'B3'#单元格合并和拆分sheet.merge_cells('A1:C3') #合并后只保留左上角单元格中的数据,其它数据舍弃sheet.unmerge_cells('A1:C3') #拆分后数据只会赋值给左上角这个单元格#设置单元格样式from openpyxl.styles import Font, colors, Alignment#设置字体sheet['A1'].Font = Font(name='bold_itatic_24', size=24, italic=True, color=colors.BLUE, bold=True) #利用单元格Font属性,设置字体为:蓝色24号斜体加粗,color参数用16进制数表示的rgb值,比如color='FF0000'(红色)#设置对其方式sheet['A1'].alignment = Alignment(horizontal='center', vertical='center') #利用alignment属性,设置单元格垂直居中,horizontal参数还可以"left","right"等,vertical参数还可以是"top","bottom"等
七、行和列 *** 作
#列号和字母之间转换from openpyxl.utils import get_column_letter, column_index_from_string# 根据列的数字返回字母print(get_column_letter(2)) # B# 根据字母返回列的数字print(column_index_from_string('D')) # 4#设置行高和列宽# 第2行行高sheet.row_dimensions[2].height = 40# C列列宽sheet.column_dimensions['C'].wIDth = 30# 获取行和列数据# 获取行数据List(sheet.rows) #列表中,每行的单元格构成一个tupleList(sheet.rows)[1]#第2行所有单元格构成的tuple# 获取指定区间数据sheet['B2':'D6'] #tuple类型,内部还是由每行的单元格构成一个tuple# 获取列数据List(sheet.columns) #列表中,每列的单元格构成一个tuple#添加行数据#append方法添加数据,是从第一个空白行行首开始添加,比如第一行有数据,第二行空白,则数据从第二行开始添加#添加单行数据sheet.append([1,2,3,4,5])#添加多行数据sheet.append([[10,20,30,40,50],[11,22,33,44,55],[33,44,55,66,77]])

最后一定要记得wb.save('xxx.xlsx')来保存所有 *** 作,一定要记得!一定要记得!一定要记得!

总结

以上是内存溢出为你收集整理的python中Excel文件处理库-openpyxl的使用全部内容,希望文章能够帮你解决python中Excel文件处理库-openpyxl的使用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1186389.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存