• 使用openpyxl库读取Excel文件数据


    在Python中,我们经常需要读取和处理Excel文件中的数据。openpyxl是一个功能强大的库,可以轻松地实现Excel文件的读写操作。本文将介绍如何使用openpyxl库读取Excel文件中的数据。

    1. 导入所需库

    首先,我们需要导入openpyxl库,这个库提供了许多用于操作Excel文件的功能。

    from openpyxl import load_workbook

    2. 加载工作簿

    接下来,我们需要加载Excel文件的工作簿。

    workbook = load_workbook(filename=r'C:\Users\liuchunlin2\Desktop\新建文件夹\新建 XLSX 工作表.xlsx')

    请注意,filename参数需要指定Excel文件的路径。

    3. 获取指定工作表

    在Excel文件中,可能包含多个工作表。我们需要指定要获取数据的工作表名称。

    sheet_name = "Sheet1"
    sheet = workbook[sheet_name]

    根据指定的工作表名称,我们可以获取到对应的工作表对象。

    4. 遍历行和列

    接下来,我们可以使用不同的方法遍历工作表中的行和列,并获取每个单元格的值。

    4.1 遍历行

    我们可以使用iter_rows()方法来获取指定范围内的一系列行,并遍历每行中的每个单元格。

    for row in sheet.iter_rows(min_row=1, max_row=1, min_col=1, max_col=1):
        for cell in row:
            print(cell.value)

    4.2 遍历列

    同样地,我们可以使用iter_cols()方法获取指定范围内的一系列列,并遍历每列中的每个单元格。

    for col in sheet.iter_cols(min_row=1, max_row=1, min_col=1, max_col=1):
        for cell in col:
            print(cell.value)

    4.3 遍历所有行和列

    除了使用上述方法来遍历特定范围内的行和列,我们还可以直接获取工作表中的所有行和列,并遍历每个单元格。

    复制代码
    # 遍历所有行
    for row in sheet.rows:
        for cell in row:
            print(cell.value)
    
    # 遍历所有列
    for col in sheet.columns:
        for cell in col:
            print(cell.value)
    复制代码

    4.4 获取所有单元格的值

    如果我们只关注单元格中的值,并跳过格式信息,可以使用iter_rows()iter_cols()方法的values_only=True参数来实现。

    复制代码
    # 获取所有行的值
    for row in sheet.iter_rows(values_only=True):
        for cell_value in row:
            print(cell_value)
    
    # 获取所有列的值
    for col in sheet.iter_cols(values_only=True):
        for cell_value in col:
            print(cell_value)
    复制代码

    4.5 获取指定范围的单元格区域

    如果我们只需要获取特定范围内的单元格区域,可以使用切片来实现。

    # 获取指定范围内的单元格区域
    for row in sheet['A1:E8']:
        for cell in row:
            print(cell.value)

    总结

    本文介绍了如何使用openpyxl库读取Excel文件中的数据。通过加载工作簿、获取指定工作表以及遍历行和列,我们可以轻松地读取Excel文件中的数据并进行处理

    完整代码:

    复制代码
    from openpyxl import load_workbook
    
    # 加载工作簿
    workbook = load_workbook(filename=r'C:\Users\liuchunlin2\Desktop\新建文件夹\新建 XLSX 工作表.xlsx')
    
    # 指定要获取数据的工作表名称
    sheet_name = "Sheet1"
    
    # 获取指定名称的工作表
    sheet = workbook[sheet_name]
    
    # 使用 iter_rows() 方法获取指定范围内的一系列行,并遍历每行中的每个单元格
    for row in sheet.iter_rows(min_row=1, max_row=1, min_col=1, max_col=1):
        for cell in row:
            print(cell.value)
    
    # 使用 iter_cols() 方法获取指定范围内的一系列列,并遍历每列中的每个单元格
    for col in sheet.iter_cols(min_row=1, max_row=1, min_col=1, max_col=1):
        for cell in col:
            print(cell.value)
    
    # rows 属性返回工作表中所有行的列表
    for row in sheet.rows:
        for cell in row:
            print(cell.value)
    
    # columns 属性返回工作表中所有列的列表
    for col in sheet.columns:
        for cell in col:
            print(cell.value)
    
    # 使用 iter_rows() 方法获取工作表中的所有行并返回每个单元格的值,values_only=True 参数可以跳过单元格的格式信息
    for row in sheet.iter_rows(values_only=True):
        for cell_value in row:
            print(cell_value)
    
    # 使用 iter_cols() 方法获取工作表中的所有列并返回每个单元格的值,values_only=True 参数可以跳过单元格的格式信息
    for col in sheet.iter_cols(values_only=True):
        for cell_value in col:
            print(cell_value)
    
    # 使用切片来获取指定范围内的单元格区域,并使用嵌套循环来遍历该区域内的每个单元格
    for row in sheet['A1:E8']:
        for cell in row:
            print(cell.value)
    复制代码

     

  • 相关阅读:
    聊聊GPU与CPU的区别
    【Xcode-宏定义配置】
    计算机操作系统 第四章 存储器管理(3)
    在carla环境下使用BasicAgent进行导航
    数据之道读书笔记-07打造“数字孪生”的数据全量感知能力
    Raspberry Pi 4B树莓派学习笔记
    ARM,汇编指令
    车载以太网TSN
    一图读懂「五度易链」企业创新服务解决方案,打造卓越营商环境!
    go-zero微服务实战系列(九、极致优化秒杀性能)
  • 原文地址:https://www.cnblogs.com/lcl-cn/p/17810586.html