關於如何正確使用python csv模塊將數據寫回CSV文件的快速問題。目前我正在導入一個文件,拉動一列日期,並使用日期時間模塊製作一列days_of_the_week。然後我想寫出一個包含一個原始元素和新元素的新csv文件(或覆蓋單個文件)。python CSV寫入器 - 格式
with open('new_dates.csv') as csvfile2:
readCSV2 = csv.reader(csvfile2, delimiter=',')
incoming = []
for row in readCSV2:
readin = row[0]
time = row[1]
year, month, day = (int(x) for x in readin.split('-'))
ans = datetime.date(year, month, day)
wkday = ans.strftime("%A")
incoming.append(wkday)
incoming.append(time)
with open('new_dates2.csv', 'w') as out_file:
out_file.write('\n'.join(incoming))
輸入文件看起來是這樣的:
2017-03-02,09:25
2017-03-01,06:45
2017-02-28,23:49
2017-02-28,19:34
使用此代碼時我結束了,看起來像這樣的輸出文件:
Friday
15:23
Friday
14:41
Friday
13:54
Friday
7:13
我需要的是一個輸出文件看起來像這樣:
Friday,15:23
Friday,14:41
Friday,13:54
Friday,7:13
如果我將out_file.write中的分隔符更改爲逗號我只是每列獲得一個數據元素,如下所示:
Friday 15:23 Friday 14:41 Friday 13:54 ....
任何想法將不勝感激。謝謝!
問題可能是這個連接操作:''\ n'.join(incoming)'。嘗試用空格替換_ \ n_以獲得所需的輸出;對於真正的csv,使用_「,」_ – patrick
使用空格會導致一個長行中的所有數據,而不是兩個CSV列。如前所述,逗號的使用會導致單個行中不同字段中的每個值。 – Justin
輸入文件是什麼樣的? –