Python自动化操作Excel方法详解(xlrd,xlwt)

  • Post category:Python

我会为您详细讲解“Python自动化操作Excel方法详解(xlrd,xlwt)”的完整实例教程。

1. 安装相关模块

在Python中使用xlrd和xlwt模块操作Excel文件,需要先安装这两个模块。

pip install xlrd
pip install xlwt

2. 打开Excel文件

使用xlrd模块的open_workbook方法打开Excel文件,代码示例如下:

import xlrd

wb = xlrd.open_workbook('example.xlsx')

其中,example.xlsx是我们要操作的Excel文件名,也可以使用文件的绝对路径。

3. 获取sheet

在Excel文件中,通常包含多个sheet。我们可以使用sheet_by_indexsheet_by_name方法来获取指定的sheet对象。代码示例如下:

# 通过索引获取sheet对象
sheet1 = wb.sheet_by_index(0)

# 通过表名获取sheet对象
sheet2 = wb.sheet_by_name('Sheet2')

4. 获取单元格数据

在操作Excel文件时,我们通常需要获取单元格中的数据。使用xlrd模块的cell方法可以获取单元格中的数据,代码示例如下:

# 获取第1行第1列单元格的数据
cell = sheet1.cell(0, 0)
print(cell.value)

如果要获取整个表格的数据,可以使用两个for循环遍历每个单元格,代码示例如下:

# 获取整个表格的数据
for i in range(sheet1.nrows):
    for j in range(sheet1.ncols):
        print(sheet1.cell(i, j).value)

5. 写入Excel文件

使用xlwt模块,我们可以将数据写入Excel文件中。首先,我们需要创建一个Workbook对象,并使用add_sheet方法创建一个sheet。然后,使用write方法将数据写入单元格中。代码示例如下:

import xlwt

# 创建Workbook对象
wb = xlwt.Workbook(encoding='utf-8')

# 创建sheet对象
sheet1 = wb.add_sheet('Sheet1')

# 写入数据
sheet1.write(0, 0, 'Hello')

# 保存文件
wb.save('example.xls')

示例中,我们已经将数据Hello写入Excel文件中。您可以通过打开example.xls文件来查看是否已成功写入。

6. 示例说明

示例1:读取Excel文件中的数据

假设我们有一个students.xlsx文件,其中包含了学生信息表格。我们要从中获取每个学生的信息,然后通过控制台输出。

首先,我们需要打开Excel文件,并获取指定的sheet对象。然后,使用两个for循环遍历每个单元格,获取每个学生的信息。代码示例如下:

import xlrd

# 打开Excel文件
workbook = xlrd.open_workbook('students.xlsx')

# 获取指定的sheet对象
sheet = workbook.sheet_by_name('Sheet1')

# 获取表格的行数和列数
nrows = sheet.nrows
ncols = sheet.ncols

# 遍历每行每列,获取每个学生的信息
for i in range(1, nrows):
    student = {}
    for j in range(ncols):
        key = sheet.cell_value(0, j)
        value = sheet.cell_value(i, j)
        student[key] = value
    print(student)

在控制台输出的内容中,我们可以看到每个学生的信息以字典的形式被输出。

示例2:向Excel文件中写入数据

假设我们要将一些数据写入到Excel文件中,然后将文件保存为output.xlsx

首先,我们需要创建Workbook对象,并使用add_sheet方法创建一个sheet。然后,使用write方法将数据写入单元格中。最后,保存文件。代码示例如下:

import xlwt

# 创建Workbook对象
workbook = xlwt.Workbook(encoding='utf-8')

# 创建sheet对象
sheet = workbook.add_sheet('Sheet1')

# 写入数据
sheet.write(0, 0, '姓名')
sheet.write(0, 1, '年龄')
sheet.write(0, 2, '性别')

sheet.write(1, 0, '张三')
sheet.write(1, 1, 20)
sheet.write(1, 2, '男')

sheet.write(2, 0, '李四')
sheet.write(2, 1, 21)
sheet.write(2, 2, '女')

# 保存文件
workbook.save('output.xlsx')

示例中,我们已经将数据写入Excel文件中,并保存为output.xlsx。您可以通过打开output.xlsx文件来查看是否已成功写入。

好了,以上就是“Python自动化操作Excel方法详解(xlrd,xlwt)”的一些介绍和代码示例,希望对您有所帮助!