Python打开.xls文件 xlrd

Python打开.xls文件 xlrd

Python打开.xls文件 xlrd

介绍

在日常工作和学习中,我们经常需要处理各种类型的数据文件。其中,Excel文件是一种常见的数据文件类型,而.xls格式是旧版本的Excel文件格式,它使用了二进制的方式存储数据。

Python作为一种强大的程序设计语言,提供了很多开源库来处理Excel文件。其中,xlrd是Python中一个非常流行的库,它可以读取.xls文件,并提供了丰富的功能,使我们能够处理这些文件中的数据。

本文将详细介绍如何使用xlrd库来打开.xls文件,并展示了一些常见的用法。

安装

在开始之前,我们需要先安装xlrd库。在命令行中执行如下命令即可安装:

pip install xlrd

打开.xls文件

首先,我们需要导入xlrd库:

import xlrd

然后,使用xlrd库的open_workbook()函数来打开一个.xls文件。这个函数接受一个文件路径作为参数,并返回一个工作簿对象:

workbook = xlrd.open_workbook('example.xls')

在上述代码中,我们打开了名为example.xls的文件,并将返回的工作簿对象赋值给了workbook变量。

获取工作表

一旦我们打开了一个.xls文件,我们就可以通过工作簿对象来获取其中的工作表。首先,我们可以使用sheet_names()函数获取工作簿中所有工作表的名称列表:

sheet_names = workbook.sheet_names()

上述代码将返回一个包含所有工作表名称的列表。

如果我们知道要获取的工作表的名称,我们可以使用sheet_by_name()函数来获取指定名称的工作表对象:

sheet = workbook.sheet_by_name('Sheet1')

上述代码将返回一个名为Sheet1的工作表对象。

另外,我们也可以使用sheet_by_index()函数来通过索引获取工作表对象。索引从0开始,依次递增:

sheet = workbook.sheet_by_index(0)

上述代码将返回第一个工作表对象。

读取数据

一旦我们获取了工作表对象,我们就可以开始读取其中的数据了。我们可以使用nrows属性来获取工作表中的行数,使用ncols属性来获取列数:

num_rows = sheet.nrows
num_cols = sheet.ncols

上述代码将分别返回工作表中的行数和列数。

然后,我们可以使用row_values()函数来获取指定行的数据。行索引从0开始,依次递增:

row_data = sheet.row_values(0)

上述代码将返回第一行的数据。

同样地,我们也可以使用col_values()函数来获取指定列的数据。列索引从0开始,依次递增:

col_data = sheet.col_values(0)

上述代码将返回第一列的数据。

除了上述的读取方式之外,我们还可以使用cell()函数来获取指定单元格的数据。单元格的行列索引都是从0开始的:

cell_data = sheet.cell(0, 0).value

上述代码将返回第一个单元格的数据。

示例

下面是一个完整的示例,展示了如何使用xlrd库来打开一个.xls文件,并读取其中的数据:

import xlrd

# 打开.xls文件
workbook = xlrd.open_workbook('example.xls')

# 获取工作表
sheet = workbook.sheet_by_name('Sheet1')

# 读取数据
num_rows = sheet.nrows
num_cols = sheet.ncols

for i in range(num_rows):
    row_data = sheet.row_values(i)
    print(f'第 {i + 1} 行的数据:{row_data}')

for j in range(num_cols):
    col_data = sheet.col_values(j)
    print(f'第 {j + 1} 列的数据:{col_data}')

cell_data = sheet.cell(0, 0).value
print(f'第一个单元格的数据:{cell_data}')

运行结果

当执行上述示例代码时,将输出如下结果:

第 1 行的数据:[1.0, 2.0, 3.0, 4.0, 5.0]
第 2 行的数据:[6.0, 7.0, 8.0, 9.0, 10.0]
第 3 行的数据:[11.0, 12.0, 13.0, 14.0, 15.0]
第 4 行的数据:[16.0, 17.0, 18.0, 19.0, 20.0]
第 5 行的数据:[21.0, 22.0, 23.0, 24.0, 25.0]
第 1 列的数据:[1.0, 6.0, 11.0, 16.0, 21.0]
第 2 列的数据:[2.0, 7.0, 12.0, 17.0, 22.0]
第 3 列的数据:[3.0, 8.0, 13.0, 18.0, 23.0]
第 4 列的数据:[4.0, 9.0, 14.0, 19.0, 24.0]
第 5 列的数据:[5.0, 10.0, 15.0, 20.0, 25.0]
第一个单元格的数据:1.0

以上结果展示了示例代码中读取的.xls文件中的数据。你可以根据自己的需求进行修改和扩展,以适应不同的数据文件。

总结

本文介绍了如何使用xlrd库来打开.xls文件,并读取其中的数据。通过xlrd库,我们可以方便地处理.xls文件,获取其中的行、列和单元格数据。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程