Python读取xlsx文件的实现方法

  • Post category:Python

下面我会详细讲解“Python读取xlsx文件的实现方法”的完整实例教程,并且会提供两条示例说明。

1. 安装依赖库openpyxl

Python读取xlsx文件需要使用openpyxl库,你可以通过以下命令进行安装:

pip install openpyxl

2. 读取xlsx文件

下面是一个简单的例子,我们可以从Excel表的第一行开始读取数据:

import openpyxl

# 打开Excel表格
workbook = openpyxl.load_workbook("test.xlsx")

# 选择指定的工作表
worksheet = workbook["Sheet1"]

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

在这个例子中,我首先打开名为“test.xlsx”的Excel表格,并选择名为“Sheet1”的工作表。然后,我遍历了工作表中的所有行,对于每个单元格,我都打印了它的值。

3. 使用筛选器读取xlsx文件

有时候,你可能只想读取表格中符合某些条件的行。使用openpyxl的筛选器,你可以方便地过滤出符合条件的数据。下面是一个使用筛选器的例子:

import openpyxl

# 打开Excel表格
workbook = openpyxl.load_workbook("test.xlsx")

# 选择指定的工作表
worksheet = workbook["Sheet1"]

# 创建筛选器
filter = openpyxl.worksheet.filters.AutoFilter(column_letter='B', operator='>=', value=80)

# 开启筛选器
worksheet.auto_filter.ref = worksheet.dimensions

# 遍历工作表中所有的行
for row in worksheet.rows:
    # 仅输出第二列中数值大于等于80的行
    if row[1].value and row[1].value >= 80:
        for cell in row:
            print(cell.value)

在这个例子中,我首先打开名为“test.xlsx”的Excel表格,并选择名为“Sheet1”的工作表。然后,我定义了一个筛选器,用于过滤第二列中数值大于等于80的行。接着,我启用了该筛选器,并遍历工作表中的所有行,如果某行满足筛选条件,我就输出该行的所有单元格数据。