掌握数据处理利器:openpyxl Python 库

今天给大家分享一个神奇的 Python 库:openpyxl

openpyxl 是一个用于读取和写入 Excel 2010 及以上版本的 xlsx/xlsm/xltx/xltm 文件的 Python 库。它提供了与 Excel 工作簿进行交互的功能,非常适合进行自动化或批量处理 Excel 数据。

图片[1]-掌握数据处理利器:openpyxl Python 库-山海云端论坛

初体验

库的安装: 可以直接通过 pip 进行安装。

<code>pip install openpyxl</code>

读取数据: 使用 openpyxl 可以访问单元格、行、列和工作表。

<code>import openpyxl # Load workbook workbook = openpyxl.load_workbook('example.xlsx') # Select sheet sheet = workbook['Sheet1'] # Access cell value cell_value = sheet['A1'].value # Iterate through rows for row in sheet.iter_rows(min_row=2, max_row=sheet.max_row, values_only=True): print(row)</code>

写入数据: 与读取类似,你可以使用 openpyxl 写入数据。你可以在写入之前直接为单元格赋值、创建新工作表以及设置单元格格式。

<code>import openpyxl # Create a new workbook workbook = openpyxl.Workbook() # Select sheet sheet = workbook.active # Write data to cells sheet['A1'] = 'Hello' sheet['B1'] = 'World' # Save workbook workbook.save('output.xlsx')</code>

修改数据: 你可以通过更新单元格值、插入或删除行/列以及通过 Python 代码应用公式来修改现有数据。

<code>import openpyxl # Load workbook workbook = openpyxl.load_workbook('example.xlsx') # Select sheet sheet = workbook['Sheet1'] # Modify cell value sheet['A1'] = 'New Value' # Save workbook workbook.save('example_modified.xlsx')</code>

格式和样式: openpyxl 允许设置单元格和范围的字体、颜色、边框和其他样式。

<code>import openpyxl from openpyxl.styles import Font, Alignment # Load workbook workbook = openpyxl.load_workbook('example.xlsx') # Select sheet sheet = workbook['Sheet1'] # Apply formatting cell = sheet['A1'] cell.font = Font(bold=True, color='FF0000') cell.alignment = Alignment(horizontal='center', vertical='center') # Save workbook workbook.save('formatted_example.xlsx')</code>

计算和公式: 你可以利用 Python 的数学功能对 Excel 数据执行复杂的计算。你还可以使用字符串格式将公式直接插入到单元格中。

<code>import openpyxl # Load workbook workbook = openpyxl.load_workbook('example.xlsx') # Select sheet sheet = workbook['Sheet1'] # Add formula to a cell sheet['C1'] = '=A1 + B1' # Update formula results workbook.calculate_all() # Get calculated value result = sheet['C1'].value # Save workbook workbook.save('formula_example.xlsx')</code>

日期和时间: openpyxl 提供了在 Excel 中处理日期和时间的工具。你可以在格式之间进行转换、执行日期计算以及设置日期显示格式。

<code>import openpyxl from openpyxl.utils import get_column_letter from openpyxl.styles import NamedStyle # Load workbook workbook = openpyxl.Workbook() # Select sheet sheet = workbook.active # Add date and time sheet['A1'] = 'Date' sheet['B1'] = 'Time' date_style = NamedStyle(name='date_style', number_format='DD-MM-YYYY') time_style = NamedStyle(name='time_style', number_format='HH:MM:SS') sheet['A2'] = '2022-01-18' sheet['A2'].style = date_style sheet['B2'] = '12:30:45' sheet['B2'].style = time_style # Save workbook workbook.save('datetime_example.xlsx')</code>

图表和图形: 像 matplotlib 这样的 Python 库可以与 openpyxl 集成,以直接在 Excel 文件中创建各种图表和图形。

<code>import openpyxl from openpyxl.chart import BarChart, Reference # Load workbook workbook = openpyxl.Workbook() # Select sheet sheet = workbook.active # Add data for i in range(1, 6): sheet['A{}'.format(i)] = i sheet['B{}'.format(i)] = i * 2 # Create a bar chart chart = BarChart() data = Reference(sheet, min_col=2, min_row=1, max_col=2, max_row=5) categories = Reference(sheet, min_col=1, min_row=2, max_row=5) chart.add_data(data, titles_from_data=True) chart.set_categories(categories) # Add chart to worksheet sheet.add_chart(chart, "D2") # Save workbook workbook.save('chart_example.xlsx')</code>
图片[2]-掌握数据处理利器:openpyxl Python 库-山海云端论坛
© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容