[英]Python CSV (DictWriter) overwriting data?
在過去的 3 個月里,我運行了一個 Python 腳本。 簡單的抓取工具,它抓取當天收集的日期、點和當前時間,並使用DictWriter
將其寫入 CSV 中。
昨天,我不得不打開 CSV(使用 Apple 默認的 Numbers 應用程序)並刪除最近輸入的日期、點、時間。 從那時起,它一直將新條目附加到前一行,創建額外的列。 我沒有編輯任何代碼。
讓我嘗試創建問題的視覺效果:
第一行是標題
| Date | Points | Time Completed |
| Mar 29 | 15141 | 08:55 AM |
| Mar 30 | 15411 | 08:56 PM |
| Mar 31 | 15681 | 11:08 AM |
| Apr 01 | 15911 | 10:40 AM |
| Date | Points | Time Completed | | |
| Mar 29 | 15141 | 08:55 AM | | |
| Mar 30 | 15411 | 08:56 PM | | |
| Mar 31 | 15681 | 11:08 AM | | |
| Apr 01 | 15911 | 10:40 AMApril02 | 16276 | 07:57 PM |
我沒有更改之前/之后的任何代碼。
def write_csv(points):
headers = ['Date', 'Points', 'Time completed']
today = date.today().strftime("%B %d")
now = datetime.now().strftime("%I:%M %p")
with open('/Users/Shared/PointsTracker.csv', 'a') as PointsTracker:
writer = csv.DictWriter(PointsTracker, fieldnames=headers)
writer.writerow({
headers[0]: today,
headers[1]: points,
headers[2]: now
})
編輯文件時刪除了尾隨換行符。 編輯文件並將其放回原處。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.