Python:如何读取多个文件夹中的所有文本文件内容并将它们保存到一个excel文件中

时间:2011-09-30 06:45:20

标签: python excel text xlwt

我目前正在完成这项任务并陷入困境。请给我你的意见。我在下面写的代码,它只返回多个文件夹中的.txt文件名,而我想打印出每个.txt文件的内容并保存在excel的不同行中。每个.txt文件的内容都是数字。

import os, glob,xlwt
#create workbook and worksheet
wbk = xlwt.Workbook()
sheet = wbk.add_sheet('data')
path= 'E:\Cag\Data'
row = 0
for dir,subdir,files in os.walk(path):
    for file in files:
        if glob.fnmatch.fnmatch(file, '*.txt'):
            L = file.strip()
            sheet.write(row,5,L)
            row += 1
wbk.save('read_all_txt_in_folders.xls')
print 'success'

2 个答案:

答案 0 :(得分:2)

嗯,你看到了文件名,因为你写了它们。 L包含文件名。 (L = file.strip()对我来说似乎没用。)

如果你想写文件内容,你应该改为L = open(os.path.join(dir, file), "r").read()

答案 1 :(得分:2)

如果你想写文件内容,你应该改为

with open(os.path.join(dir, file), "r") as source:
    L= source.read()

这可以确保在您阅读完文件后实际关闭该文件。这释放了系统资源。