[英]CSV Writer Issue in Python
我的代碼顯然搞砸了,但是幾次嘗試都使我無處可去。 我這樣創建了一個自定義方言...
def wereofftoseesv(start_id, end_id):
with open('nba_2015_16_pbp.csv', "w") as f:
csv.register_dialect('scraper', delimiter="[", lineterminator = '', escapechar='', quoting=csv.QUOTE_MINIMAL)
writer = csv.writer(f, dialect='scraper')
writer.writerows(["gameid", "time_remaining", "entry", "score", "team", "line", "attendance + capacity", "refs"])
writer.writerows(list_cleaner(start_id, end_id))
我認為這意味着,每次CSV編寫器在我的代碼中看到“ [”時,都會將隨后的輸出發送到新的單元格中。
我想要發送到CSV的最終代碼如下所示...
[[400827889], [([48, 0], 'Timofey Mozgov vs. Pau Gasol (Derrick Rose gains possession)', '0 - 0', 'CHI')], ['CHI -1.5'], ['Attendance: 21,957', 'Capacity: 20,917'], ['Mark Ayotte, Scott Foster, Ben Taylor'], [400827889], [([47, 34],
而且,我希望每當您看到長數字“ 400827889”時,所有這些較小的列表和字符串都會被換行。
目前,我的變量名(第5行)顯示如下:
g[a[m[e[i[d] t[i[m[e[_[r[e[m[a[i[n[i[n[g] e[n[t[r[y] s[c[o[r[e] t[e[a[m] l[i[n[e] a[t[t[e[n[d[a[n[c[e[" "[+[" "[c[a[p[a[c[i[t[y] r[e[f[s]
我的CSV輸出如下:“ //”是我在事后添加的表示“新單元格”的內容,如下所示:
"[400827888]"["[([48 // 0] // 'Andre Drummond vs. Al Horford (Ersan Ilyasova gains possession)'// '0 - 0' // 'ATL')]"["['ATL -6.5']"["['Attendance: 19 // 187' // 'Capacity: 18 // 729']"["['Eli Roe // Zach Zarba // Michael Smith']"["[400827888]"["[([47..."
感謝您提供的所有幫助!
因此,根據此處csv上的python文檔 ,定界符是用於分隔數據字段的單個字符。 您要做的第一件事是將delimiter="[",
更改為delimiter=",",
然后改變writer.writerows
行5至write.writerow
。
您還應該使lineterminator = ''
而不是空字符串。
老實說,我不確定csv是否是處理數據的最佳選擇。 因為看起來好像您有很多重復數據-您不需要每一行數據都需要行,引用,出席等。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.