我们开始讲解Python使用xlrd和xlwt批量读写excel文件的示例代码。
1. 安装xlrd和xlwt库
在使用xlrd和xlwt库之前,需要先安装这两个库。可以通过pip来进行安装。
pip install xlrd
pip install xlwt
2. 示例一:批量读取Excel文件
接下来,我们来看一个批量读取Excel文件的示例代码。
import os
import xlrd
# 文件夹路径
dir_path = 'your_dir_path'
# 获取文件夹下所有文件
file_list = os.listdir(dir_path)
# 循环遍历文件
for file_name in file_list:
# 判断文件后缀是否为xls或xlsx
if file_name.endswith('.xls') or file_name.endswith('.xlsx'):
# 拼接文件路径
file_path = os.path.join(dir_path, file_name)
# 打开文件
workbook = xlrd.open_workbook(file_path)
# 获取sheet数量
sheet_num = workbook.nsheets
# 循环遍历sheet
for i in range(sheet_num):
# 获取sheet对象
sheet = workbook.sheet_by_index(i)
# 获取sheet行数和列数
row_num = sheet.nrows
col_num = sheet.ncols
# 循环遍历每一行
for j in range(row_num):
# 获取每一行数据
row_data = sheet.row_values(j)
print(row_data)
这段代码首先读取指定文件夹下的所有文件,然后判断文件后缀是否为xls或xlsx格式,如果满足条件,则打开该文件,并遍历所有sheet,以及每个sheet的所有行和列,最后读取每一行的数据,并输出到控制台上。
需要注意的是,在使用xlrd库读取Excel文件时,首先需要打开Excel文件,然后获取sheet对象,才能进行数据读取。
3. 示例二:批量写入Excel文件
下面我们再来看一个批量写入Excel文件的示例代码。
import os
import xlwt
# 文件夹路径
dir_path = 'your_dir_path'
# 获取文件夹下所有文件
file_list = os.listdir(dir_path)
# 新建Excel文件和sheet
workbook = xlwt.Workbook(encoding='utf-8')
sheet = workbook.add_sheet('Sheet1')
# 写入表头
row_num = 0
sheet.write(row_num, 0, '姓名')
sheet.write(row_num, 1, '年龄')
# 循环遍历文件
for file_name in file_list:
# 判断文件后缀是否为xls或xlsx
if file_name.endswith('.xls') or file_name.endswith('.xlsx'):
# 拼接文件路径
file_path = os.path.join(dir_path, file_name)
# 打开文件
workbook_r = xlrd.open_workbook(file_path)
# 获取sheet对象
sheet_r = workbook_r.sheet_by_index(0)
# 获取sheet行数
row_num_r = sheet_r.nrows
# 循环遍历每一行
for i in range(1, row_num_r):
# 获取每一行数据
row_data = sheet_r.row_values(i)
name = row_data[0]
age = row_data[1]
# 写入数据到新Excel文件中
row_num += 1
sheet.write(row_num, 0, name)
sheet.write(row_num, 1, age)
# 保存Excel文件
workbook.save('new_file.xls')
这段代码首先新建一个Excel文件和sheet,并写入表头信息。然后循环遍历指定文件夹下的所有文件,获取每个Excel文件的第一个sheet,并遍历该sheet的每一行数据,将姓名和年龄信息写入到新的Excel文件中。
需要注意的是,在使用xlwt库写入Excel文件时,首先需要新建一个Excel文件和sheet对象,然后才能进行数据的写入操作。
4. 总结
这就是Python使用xlrd和xlwt批量读写Excel文件的示例代码。在实际开发中,我们可以根据需要进行修改和优化。同时,还可以使用pandas库来进行Excel文件的读写操作,该库对于大规模数据读取和写入更为高效。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python使用xlrd和xlwt批量读写excel文件的示例代码 - Python技术站