[英]Editing csv file Python 3 - matching file content to the print output
我遇到的問題是創建的csv文件的內容顯示為打印輸出。
碼:
import csv
with open('test.csv', 'w', newline='') as csvfile:
filewriter = csv.writer(csvfile, delimiter=' ',
quotechar=',', quoting=csv.QUOTE_MINIMAL)
filewriter.writerow(['Spam'] * 2 + ['Baked Beans'])
filewriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])
with open('test.csv', newline='') as csvfile:
filereader = csv.reader(csvfile, delimiter=' ', quotechar=',')
for row in filereader:
print(', '.join(row))
輸出:
Spam, Spam, Baked Beans
Spam, Lovely Spam, Wonderful Spam
test.csv
文件:
Spam Spam ,Baked Beans,
Spam ,Lovely Spam, ,Wonderful Spam,
注意奇怪的逗號。
test.csv
所需內容
Spam, Spam, Baked Beans
Spam, Lovely Spam, Wonderful Spam
獲得此輸出的原因是因為您使用逗號quotechar=','
來引用包含空格的字段,這是您的分隔符。 話雖這么說,你想要的是使用,
作為分隔符這是默認的分隔符值 。
import csv
with open('test.csv', 'w', newline='') as csvfile:
filewriter = csv.writer(csvfile)
filewriter.writerow(['Spam'] * 2 + ['Baked Beans'])
filewriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])
如果要讀取csv
文件,同樣適用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.