赞
踩
目录
文件必须是 xlsx 格式
openpyxl
pip install openpyxl
- # 新建文件
- from openpyxl import Workbook
- wb = Workbook()
-
- # 打开已有文件
- from openpyxl import load_workbook
- wb = load_workbook('filename.xlsx')
-
- # 保存文件
- wb.save('filename.xlsx')
对文件操作之前,先选定工作表
- # 一般来说,表格大多数用到的是打开时显示的工作表,这时可以用active来获取当前工作表
- sheet = wb.active
-
- # 创建新的工作表
- sheet1 = wb.create_sheet() # 默认在最后插入
- sheet2 = wb.create_sheet(0) # 在开头插入
-
- # 获取所有工作表名(返回一个列表)
- sheets = wb.get_sheet_names()
-
- # 获取指定的工作表
- sheet3 = wb.get_sheet_by_name('Sheet')
-
- # 获取工作表的表名
- sheet3_name = sheet.title
-
- # 设定工作表的名字
- sheet3.title = 'MySheet'
-
- # 删除工作表
- wb.remove(sheet3)
- # 通过sheet[列行名]获取
- a1 = sheet['A1']
-
- # 通过sheet.cell(row, column)获取
- b1 = sheet.cell(1, 2) # 即sheet['B1']
- # 参数 row, column 分别是行和列,且必须为整数,如果列为英文字母,需转换
- # 对列进行字母/数字转化
- from openpyxl.utils import get_column_letter, column_index_from_string
- num = column_index_from_string('B') # num = 2
- char = get_column_letter(2) # char = 'B'
-
- # 获取单元格内容
- print(a1.value)
-
- # 获取单元格所在列和行
- print(a1.column, a1.row)
获取行和列:
sheet.rows
:每一行数据
sheet.columns
:每一列数据
- # 对行进行遍历,输出A1,B1,C1
- for row in sheet.rows:
- for cell in row:
- print(cell.value)
-
- # 对列进行遍历,输出A1,A2,A3
- for column in sheet.columns:
- for cell in column:
- print(cell.value)
- # 写入单元格
- sheet['A1'].value = 2
-
- # 写入一行
- row = [1 ,2, 3, 4, 5]
- sheet.append(row)
-
- # 写入多行
- rows = [
- ['ID', 'Name', 'Department'],
- ['001', 'Lee','CS'],
- ['002', 'John','MA'],
- ['003', 'Amy','IS']
- ]
- sheet.append(rows)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。