参考链接: Python | 使用openpyxl模块调整Excel文件的行和列
由于任务经常需要使用python处理Excel数据,记录下常用的python控制Excel的方法,备忘
Tips:openpyxl模块只支持.xlsx后缀的Excel表格,.xls后缀别的表格暂不支持,提供以下两种解决思路:
1.打开.xls后缀的表格另存为.xlsx格式。 2.使用xlrd模块读,xlwt模块写(不推荐这种方法,没有openpyxl模块方便,而且如今大部分都是.xlsx格式的表格)
第一步、安装openpyxl模块
在cmd里直接输入以下命令即可
pip install openxyxl
这是一个成绩表,接下来以这个表为例展开
1.基本概念
在 openpyxl 中,主要用到三个概念:Workbook,Sheet,Cell: Workbook:就是一个 excel 工作簿,其中包含多个 sheet; Sheet:工作簿中的一张表页; Cell:就是简单的一个单元格,用来存储数据对象;
2. 读取.xlsx文件
wb = load_workbook('test.xlsx') # 读取Excel文件
按名字读取Excel中的表
sheet = wb['Sheet1'] # 按名字读取Excel里的表
按Excel中的表的顺序读取Excel中的表
# wb.sheetnames 为Excel表的列表
sheet = wb[wb.sheetnames[0]] # 读取Excel里的第一张表
获取Excel中的最大列和最大行
row = sheet.max_row # 获取表中的最大列
column = sheet.max_column # 获取表中的最大行
获取表格里的值
A1 = sheet["A1"].value # 获取A1格子里的值
保存Excel表
wb.save('test2.xlsx') # 保存为名字为"test2.xlsx"的Excel表
部分源码
from openpyxl import *
# 读取.xlsx文件
wb = load_workbook('test.xlsx')
# 读取Excel里的第一张表
sheet = wb[wb.sheetnames[0]]
# 遍历B列
for i in range(1, sheet.max_row+1):
print(sheet["B"+str(i)].value)
3.创建Excel表格
wb = Workbook() # 创建工作簿
sheet = wb.active # 激活工作表
4.单元格处理
合并、拆分单元格
sheet.merge_cells('A1:B2') # 合并单元格
sheet.unmerge_cells('A1:B2') # 拆分单元格
修改行和列的宽
sheet.column_dimensions['A'].width = 10 # 调整列宽
sheet.row_dimensions[1].height = 20 # 调整行高
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。