我是python中的新手,我有一個運行代碼,它從Web服務中提取數據並將其放入列表中,並將其寫入文本文件中。當我運行這段代碼並打開文本文件時,數據是連續的。我需要在文本文件的每一行中都有這樣的內容,它將顯示5個元素,並將轉到下一行並寫入下一個5個元素,依此類推。希望你能幫助我解決這個問題或者以其他方式提出建議來做到這一點。這是代碼。在python中格式化/顯示列表
f = open("test.txt", "w")
for item in test:
f.write("%s | " % item)
f.close()
結果看起來是這樣的:
data1, data2, data3, data4, data5, data6, data7, data8......................
它應該是這種格式:
data | data2 | data3 | data4 |
data5 | data6 | data7 | data8 |
data9 | data10 | data11 | data12 |
我希望我能有你的投入。謝謝!
寫入之前e文件,用空格或空白替換所有特殊字符。 str.replace('[],',''),或者你可以使用基本上做同樣工作的re.sub函數。 – ronak
檢查一下。這應該幫助你格式化輸出http://stackoverflow.com/questions/12831438/text-file-data-parsing-lines-and-output-as-columns – ronak
'list_s = list([...])' - 您不需要額外的list()調用,因爲您已經使用[list comprehension](http://docs.python.org/tutorial/datastructures.html#list-comprehensions)創建了一個列表。你可以使用'f.writelines(list_s)'來一次寫入整個列表,而不必循環遍歷它。 –