[英]Migrating text file data to excel using xlsxwriter is not updating completely
test.txt:A 25 12345 B 90 67890 C 31 24680 D 89 45678
預期輸出:A1 A A2 25 A3 12345 A4 B A5 90 A6 67890 ......
excel中只有最后三個數據
import xlsxwriter
workbook = xlsxwriter.Workbook('demo.xlsx')
worksheet = workbook.add_worksheet()
with open('test.txt', 'r') as f:
for i in f.readlines():
for j,k in enumerate(i.split()):
worksheet.write('A'+str(j+1), k)
workbook.close()
在內部循環中, j
將始終是枚舉0,1,2
,因此您重復寫入單元格A1
、 A2
和A3
。 如果將結果打印到控制台,您可以親眼看到:
A1 A
A2 25
A3 12345
A1 B
A2 90
A3 67890
A1 C
A2 31
A3 24680
A1 D
A2 89
A3 45678
您總是希望增加write
的第一個參數中的數字,以便對下一行進行索引; 要增加的值是拆分列表的長度(當前輸入為3
,但要確保我使用下面每行的實際長度)。 因為 Excel 從1
開始計算行數,所以這個計數器也需要從1
開始。 這將起作用:
counter = 1
for i in f.readlines():
for j,k in enumerate(i.split()):
worksheet.write('A'+str(j+counter), k)
counter += len(i.split())
就像你自己的代碼和預期的輸出一樣,它所做的只是填充第一列,輸入中的每個值,忽略換行符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.