我在一个文件夹中有100个txt文件(名为pos)。我想复制所有文件内容并将它们作为行粘贴到excel文件中。我从stackoverflow中找到了一些代码,但它们无法正常工作。请帮帮我。
import xlwt
import os
import glob
wbk = xlwt.Workbook()
sheet = wbk.add_sheet('data')
path= 'C:\tweet\pos'
row = 0
for files in os.walk(path):
... for file in files:
... if fnmatch(file, '*.txt'):
... L = open(os.path.join( file), "r").read()
... sheet.write(row,5,L)
... row += 1
...
wbk.save('read_all_txt_in_folders.xls')
答案 0 :(得分:2)
以下程序适合我。
注意:
'\t'
被解释为选项卡,而不是路径分隔符。尝试使用正斜杠。import fnmatch
/ fnmatch.fnmatch(pattern, file)
。 glob
L[:-1]
就足够了。您可能需要更强大的解决方案。os.walk()
返回一个元组:(directory, subdirectories, files)
。
import xlwt
import os
import fnmatch
wbk = xlwt.Workbook()
sheet = wbk.add_sheet('data')
row = 0
# sheet.write(1, 1, "Hello")
for (dir, dirs, files) in os.walk('.'):
# print dir
for file in files:
# print " ", file
if fnmatch.fnmatch(file, '*.txt'):
L = open(os.path.join(dir, file), "r").read()
# print " ", L.__repr__()
a = sheet.write(row,5,L[:-1])
# sheet.write(row, 4, "hello")
# print " ", a
row += 1
wbk.save('read_all_txt_in_folders.xls')