下面我来为您详细讲解一下“Python办公自动化之Excel介绍”的完整实例教程。
1. Excel文件和工作表
Excel文件是由一个或多个工作表组成。每个工作表都是由行和列交叉形成的大量单元格组成。我们可以在这些单元格中输入文本、数字和公式等数据。
2. Python操作Excel
Python中有许多库可以用来操作Excel文件,比如openpyxl、xlwt、xlrd等。在本教程中,我们使用openpyxl这个库来操作Excel文件。
2.1 安装openpyxl
使用pip命令来安装openpyxl库:
pip install openpyxl
2.2 创建Excel文件和写入数据
下面是一个示例代码,演示如何使用Python创建Excel文件并写入数据:
import openpyxl
# 创建一个新的Excel工作簿
workbook = openpyxl.Workbook()
# 获取当前工作表
worksheet = workbook.active
# 写入数据
worksheet['A1'] = '编号'
worksheet['B1'] = '姓名'
worksheet['C1'] = '年龄'
worksheet['A2'] = 1
worksheet['B2'] = '张三'
worksheet['C2'] = 22
worksheet['A3'] = 2
worksheet['B3'] = '李四'
worksheet['C3'] = 26
# 保存工作簿
workbook.save('test.xlsx')
这个示例代码创建了一个名为test.xlsx的Excel文件,并向其中一个名为Sheet1的工作表中写入了一些数据。
2.3 读取Excel文件
下面是一个示例代码,演示如何使用Python读取Excel文件中的数据:
import openpyxl
# 打开Excel文件
workbook = openpyxl.load_workbook('test.xlsx')
# 获取当前工作表
worksheet = workbook.active
# 读取数据
for row in worksheet.iter_rows(min_row=1, max_row=3, min_col=1, max_col=3, values_only=True):
for cell in row:
print(cell)
这个示例代码首先打开了名为test.xlsx的Excel文件,并获取其中的一个名为Sheet1的工作表。然后,它使用for循环遍历整个工作表,并打印出每个单元格中的数据。
3. 示例说明
3.1 示例1:从Excel文件中读取数据并进行数据分析
import openpyxl
# 打开Excel文件
workbook = openpyxl.load_workbook('test.xlsx')
# 获取当前工作表
worksheet = workbook.active
# 读取数据
data = []
for row in worksheet.iter_rows(min_row=2, max_row=4, min_col=2, max_col=3, values_only=True):
data.append(row)
# 计算平均年龄
total_age = 0
for item in data:
total_age += item[1]
avg_age = total_age / len(data)
print('平均年龄为:', avg_age)
这个示例代码从test.xlsx文件中读取数据,并计算其中若干条数据的平均年龄。此处假设这些数据的姓名和年龄信息存储在表格的B列和C列里面。
3.2 示例2:从Excel文件中读取数据并生成报表
import openpyxl
# 打开Excel文件
workbook = openpyxl.load_workbook('test.xlsx')
# 获取当前工作表
worksheet = workbook.active
# 读取数据
data = []
for row in worksheet.iter_rows(min_row=2, max_row=4, min_col=1, max_col=3, values_only=True):
data.append(row)
# 生成报表
workbook = openpyxl.Workbook()
worksheet = workbook.active
worksheet.title = 'Report'
worksheet['A1'] = '编号'
worksheet['B1'] = '姓名'
worksheet['C1'] = '年龄'
for i, item in enumerate(data):
worksheet.cell(row=i+2, column=1, value=item[0])
worksheet.cell(row=i+2, column=2, value=item[1])
worksheet.cell(row=i+2, column=3, value=item[2])
workbook.save('report.xlsx')
这个示例代码读取test.xlsx文件中B列和C列里面的数据,并将它们放到一个新的Excel文件中,生成一个名为Report的工作表,其中包含编号、姓名和年龄等信息。我们可以使用类似的方法来生成各种数据报表。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python办公自动化之Excel介绍 - Python技术站