Python处理EXCEL表格导入操作分步讲解

  • Post category:Python

我来详细讲解一下“Python处理EXCEL表格导入操作分步讲解”的完整实例教程。

1. 准备工作

在进行Python处理Excel表格导入操作之前,需要先安装第三方库openpyxl,在命令行中输入以下命令即可安装:

pip install openpyxl

2. 导入Excel文件

导入Excel文件是指将Excel文件读取到Python程序中,以便后续的处理。可以使用openpyxl库中的load_workbook函数来导入Excel文件,示例如下:

import openpyxl

# 打开Excel文件
workbook = openpyxl.load_workbook('example.xlsx')

# 选择第一个工作表
worksheet = workbook['Sheet1']

在上面的代码中,load_workbook函数会读取名为example.xlsx的Excel文件,并返回一个workbook对象,代表整个Excel文件。使用workbook对象的active属性,可以获取到当前选中的工作表,也可以使用workbook对象的[]运算符直接获取某个工作表。

3. 读取Excel表格数据

在导入Excel文件成功后,就可以读取其中的数据了。可以使用worksheet对象的iter_rows方法来逐行读取Excel表格数据,示例如下:

# 遍历工作表的所有行
for row in worksheet.iter_rows():
    # 遍历行中的所有单元格
    for cell in row:
        # 输出单元格的值
        print(cell.value)

由于Excel表格中的数据是以行为单位组织的,因此我们首先要遍历工作表中的所有行,再遍历每行中的所有单元格,从而读取单元格的值。

4. 处理Excel表格数据

在读取了Excel表格中的数据后,我们可以对它们进行进一步的处理。例如,统计某一列的数据之和,示例如下:

# 计算第二列的数据之和
total = 0
for row in worksheet.iter_rows():
    total += row[1].value

print('第二列的数据之和为:', total)

在上面的代码中,我们通过遍历所有行,累加第二列数据的值来计算数据之和。

示例说明

下面举两个例子来说明如何使用Python处理Excel表格。

示例一:计算平均值

假设我们有一个保存着某学生的三门课成绩的Excel表格,我们想要计算出该学生的平均分。Excel表格的内容如下:

姓名 语文 数学 英语
张三 80 90 70

我们可以使用以下代码来读取并计算平均分:

import openpyxl

# 打开Excel文件
workbook = openpyxl.load_workbook('example.xlsx')

# 选择第一个工作表
worksheet = workbook['Sheet1']

# 读取三门课程的成绩
chinese = worksheet['B2'].value
math = worksheet['C2'].value
english = worksheet['D2'].value

# 计算平均分
average = (chinese + math + english) / 3

# 输出平均分
print('该学生的平均分为:', average)

在上面的代码中,我们首先使用openpyxl库中的load_workbook函数加载了Excel文件,然后选择了第一个工作表。接着,我们通过对应单元格的列号和行号,分别获取了三门课程的成绩,并计算出了平均分。

示例二:筛选数据

假设我们有一个保存着某小区的房价信息的Excel表格,我们想要筛选出房屋年龄大于10年,且房价低于200万元的房屋数据。Excel表格的内容如下:

房屋编号 房屋年龄 房价(万元)
001 5 180
002 12 210
003 8 150
004 15 190

我们可以使用以下代码来读取并筛选数据:

import openpyxl

# 打开Excel文件
workbook = openpyxl.load_workbook('example.xlsx')

# 选择第一个工作表
worksheet = workbook['Sheet1']

# 遍历所有行(除去表头),找出符合条件的房屋数据
for row in worksheet.iter_rows(min_row=2):
    house_age = row[1].value
    house_price = row[2].value
    if house_age > 10 and house_price < 200:
        print('符合条件的房屋编号为:', row[0].value)

在上面的代码中,我们遍历了除去表头外的所有行,读取了每个房屋的年龄和房价。如果某个房屋的年龄大于10年且房价低于200万元,则输出该房屋的编号。

至此,我们已经完成了Python处理Excel表格导入操作的分步讲解。