下面是关于Python中使用第三方库xlrd来读取Excel示例的完整实例教程。本教程中,我们将学习如何使用xlrd来打开、读取和解析Excel文件的内容,并以两个示例来说明如何在Python代码中处理读取到的Excel数据。
环境准备
- Python 3.x
- 第三方库xlrd
简介
xlrd是Python 中一个用于读取Excel文件的第三方工具包,它可以读取.xls格式和.xlsx格式的Excel文件,以便在Python程序中使用。
安装xlrd
你可以通过pip包管理器来安装xlrd:
$ pip install xlrd
示例1
在第一个示例中,我们将读取一个Excel文件,并打印出每行的内容以及每个单元格的值。
首先,我们需要导入xlrd包并打开文件:
import xlrd
# 打开文件
workbook = xlrd.open_workbook('example.xls')
接下来,我们需要获取第一个工作表:
# 获取第一张工作表
worksheet = workbook.sheet_by_index(0)
现在,我们可以读取工作表的每一行并将其打印出来,用以下代码实现:
# 遍历行
for row_index in range(worksheet.nrows):
# 打印行号
print('Row:', row_index)
# 遍历列
for col_index in range(worksheet.ncols):
# 获取单元格的值并打印
cell_value = worksheet.cell_value(row_index, col_index)
print(cell_value, end='\t')
# 打印一行结束
print('')
最后,让我们运行这个代码并查看结果:
Row: 0
Name Age Gender
Row: 1
Alex 25 Male
Row: 2
Bob 30 Male
Row: 3
Cherry 28 Female
示例2
在第二个示例中,我们将使用xlrd工具包来读取一个Excel文件,并将其包装在一个Python对象中,以便我们可以轻松地进行一些数据处理和分析。
我们将使用以下代码来演示这个例子:
import xlrd
class Person:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
def __str__(self):
return f'Name: {self.name}, Age: {self.age}, Gender: {self.gender}'
# 打开文件
workbook = xlrd.open_workbook('example.xls')
# 获取第一张工作表
worksheet = workbook.sheet_by_index(0)
# 定义一个空列表用于存放条目数据
persons = []
# 遍历行
for row_index in range(1, worksheet.nrows):
# 获取行的值
name = worksheet.cell_value(row_index, 0)
age = worksheet.cell_value(row_index, 1)
gender = worksheet.cell_value(row_index, 2)
# 创建一个条目对象并添加到列表中
person = Person(name, age, gender)
persons.append(person)
# 打印所有条目
for person in persons:
print(person)
在上面的代码中,我们首先定义了一个名为 Person 的类,该类有三个属性:name、age 和 gender。然后,我们打开了一个名为 example.xls 的 Excel 文件,并获取了第一张工作表。接着,我们定义了一个空列表 persons,用于存储我们读取到的数据。
然后,我们遍历了工作表的每一行(不包括标题),然后从每行中获取姓名、年龄和性别的值,并使用这些值创建了一个 Person 对象。最后,我们将所有创建的对象添加到 persons 列表中。
最后,我们遍历 persons 列表并将每个对象打印到控制台上。运行代码时,你应该可以看到以下输出:
Name: Alex, Age: 25.0, Gender: Male
Name: Bob, Age: 30.0, Gender: Male
Name: Cherry, Age: 28.0, Gender: Female
这个例子展示了如何使用 xlrd 来创建一个 Python 对象,以便我们可以轻松地对数据进行操作和分析。
希望本篇文章可以帮助你了解如何使用 xlrd 来读取 Excel 文件的内容,如果你有任何疑问或建议,请在下面的评论中留言。