主页 > 游戏开发  > 

使用Openpyxl操作Excel文件详解

使用Openpyxl操作Excel文件详解

文章目录 安装安装Python3安装 openpyxl 基础操作1. 引入2. 创建工作簿和工作表3. 写入数据4. 保存工作簿5. 加载已存在的Excel6. 读取单元格的值7. 选择工作表 样式和格式化1. 引入2. 设置字体3. 设置边框4. 填充5. 设置数字格式6. 数据验证7. 公式操作 性能优化1. read_only/write_only2. 遍历单元格


openpyxl 是一个用于在 Python 中读取和写入 Excel 文件的优秀库。 它支持 .xlsx 和 .xlsm 格式,非常适合在 Ubuntu 系统上进行 Excel 数据处理和自动化操作。 本篇博客将介绍一些常用的 openpyxl 命令。

安装 安装Python3

首先,你需要安装 openpyxl 和 Python。在 Ubuntu 上,可以通过以下命令安装:

sudo apt install python3 安装 openpyxl pip3 install openpyxl
基础操作 1. 引入 from openpyxl import Workbook # 新建文件的引入 from openpyxl import load_workbook # 加载已存在文件的引入
2. 创建工作簿和工作表 wb = Workbook() # 创建一个新的工作簿 ws = wb.active # 获取活动工作表 wb.create_sheet("Sheet2") # 创建一个新的工作表并命名 ws.title = "NewSheet" # 修改工作表名
3. 写入数据 ws['A1'] = 'Hello, World!' ws['B1'] = 42 ws['C1'] = 3.14 cell = ws.cell(row=1, column=1, value="New Value")
4. 保存工作簿 wb.save('example.xlsx')
5. 加载已存在的Excel wb = load_workbook('example.xlsx') ws = wb.active
6. 读取单元格的值 cell_a1 = ws['A1'].value cell_b1 = ws['B1'].value cell_c1 = ws['C1'].value print(f"A1: {cell_a1}, B1: {cell_b1}, C1: {cell_c1}")
7. 选择工作表 ws1 = wb.worksheets[0] # 通过索引选择工作表 ws2 = wb["Sheet2"] # 通过名称选择工作表
样式和格式化 1. 引入 from openpyxl.styles import Font, Alignment # 样式操作的引入
2. 设置字体 font = Font(name='Arial', size=14, bold=True, italic=False) ws['A1'].font = font
3. 设置边框 border = Border(left=Side(border_style='thin'), right=Side(border_style='thin'), top=Side(border_style='thin'), bottom=Side(border_style='thin')) ws['A1'].border = border
4. 填充 fill = PatternFill(start_color="FF0000", end_color="FF0000", fill_type="solid") ws['A1'].fill = fill
5. 设置数字格式 ws['B1'].number_format = '0.00%' # 百分比格式 ws['C1'].number_format = 'YYYY-MM-DD' # 日期格式
6. 数据验证 from openpyxl.worksheet.datavalidation import DataValidation dv = DataValidation(type="list", formula1='"Apple,Banana,Cherry"', allow_blank=True) # 创建数据验证对象 ws.add_data_validation(dv) dv.add('A1') # 将数据验证应用到单元格
7. 公式操作

可以在单元格中插入公式:

ws['D1'] = "=SUM(A1:A3)" 性能优化 1. read_only/write_only

对于大的 Excel 文件,可以使用read_only来提高读取效率, 使用 write_only 来优化写入性能

from openpyxl import load_workbook wb = load_workbook('example.xlsx', read_only=True) # 使用只读模式加载工作簿
from openpyxl import Workbook wb = Workbook(write_only=True) # 使用写入模式创建工作簿 ws = wb.create_sheet()
2. 遍历单元格

可以使用 .rows 和 .columns 遍历工作表中的行和列:

for row in ws.iter_rows(min_row=1, max_row=5, min_col=1, max_col=3): for cell in row: print(cell.value, end=" ")
标签:

使用Openpyxl操作Excel文件详解由讯客互联游戏开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“使用Openpyxl操作Excel文件详解