我想创建一个循环来将来自不同文本文件的数据写入单个 excel 文件
I want to create a loop to write data from different text files to single excel file
我正在尝试将文件夹中某些文本文件中的数据打印到 excel 文件中。
我希望每个文件数据都在每一列中。我只能将所有文件中的数据写入单列。你能帮我看看怎么做吗?
import glob, xlsxwriter
workbook = xlsxwriter.Workbook('Example2.xlsx')
worksheet = workbook.add_worksheet()
row = 0
column = 0
fileslist = []
for file in glob.glob("C:/Users/sahithpixels/Documents/SDN/*"):
fileslist.append(file)
a = file.strip('\n')
# print(a)
filedata = []
for line in fileslist:
with open(line, 'r') as inputfile:
f = inputfile.read().rstrip('\n\n')
filedata.append(f)
for line1 in filedata:
x = line1.split('\n\n')
for line2 in x:
worksheet.write_string(row, column, line2)
row += 1
print(filedata)
workbook.close()
问题是您首先将所有文件中的数据读取到filedata
数组中。之后,您将无法再判断哪一行来自哪个文件,因此您无法增加 column
计数器。你必须嵌套这两个循环。类似于此:
filedata = []
for line in fileslist:
row = 0
with open(line, 'r') as inputfile:
f = inputfile.read().rstrip('\n\n')
filedata.append(f)
x = f.split('\n\n')
for line2 in x:
worksheet.write_string(row, column, line2)
row += 1
column += 1
print(filedata)
我正在尝试将文件夹中某些文本文件中的数据打印到 excel 文件中。 我希望每个文件数据都在每一列中。我只能将所有文件中的数据写入单列。你能帮我看看怎么做吗?
import glob, xlsxwriter
workbook = xlsxwriter.Workbook('Example2.xlsx')
worksheet = workbook.add_worksheet()
row = 0
column = 0
fileslist = []
for file in glob.glob("C:/Users/sahithpixels/Documents/SDN/*"):
fileslist.append(file)
a = file.strip('\n')
# print(a)
filedata = []
for line in fileslist:
with open(line, 'r') as inputfile:
f = inputfile.read().rstrip('\n\n')
filedata.append(f)
for line1 in filedata:
x = line1.split('\n\n')
for line2 in x:
worksheet.write_string(row, column, line2)
row += 1
print(filedata)
workbook.close()
问题是您首先将所有文件中的数据读取到filedata
数组中。之后,您将无法再判断哪一行来自哪个文件,因此您无法增加 column
计数器。你必须嵌套这两个循环。类似于此:
filedata = []
for line in fileslist:
row = 0
with open(line, 'r') as inputfile:
f = inputfile.read().rstrip('\n\n')
filedata.append(f)
x = f.split('\n\n')
for line2 in x:
worksheet.write_string(row, column, line2)
row += 1
column += 1
print(filedata)