[英]csv.writer exports horizontally
我有一個充滿值的列表。 我想將列表導出到 a.csv 文件。 我希望這些值彼此重疊,但現在它們彼此相鄰導出。
例如,我希望它像:
1
2
3
不是1 2 3
如何更改我的代碼?
with open('C:(...)file.csv', "w", newline='\n') as csfile:
wr = csv.writer(csfile, delimiter =';')
wr.writerow([item[0] for item in sntlst])
接收我的列表中的item[0]
很重要。
將delimiter
參數更改為'\n'
:
with open('C:(...)file.csv', "w", newline='\n') as csfile:
wr = csv.writer(csfile, delimiter='\n')
wr.writerow([item[0] for item in sntlst])
newline='\n'
甚至沒有必要,所以你可以不用它:
with open('C:(...)file.csv', "w") as csfile:
wr = csv.writer(csfile, delimiter='\n')
wr.writerow([item[0] for item in sntlst])
您接受的答案(@Ann Zen)可能有效,但這是由於僥幸,因為從技術上講,它濫用了關於csv.writer
的打開文件的文檔中顯示的示例的delimiter
關鍵字參數的使用 - 並且因為其中它現在可能在所有平台上都能正常工作。
所以,也就是說,在我看來,下面顯示的代碼將是一種正確且更好的做事方式。 它使列表中的每個項目成為正在創建的 CSV 文件中的一個項目的“行”。
import csv
sntlst = [1, 2, 3]
output_file_path = 'list_file.csv'
with open(output_file_path, "w", newline='') as csvfile:
wr = csv.writer(csvfile)
wr.writerows([item] for item in sntlst)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.