這可能是一個簡單的辦法,但我似乎無法推測出來......寫入CSV - 字符串被識別爲日期在Excel
使用下面的代碼輸出在Python列表,以CSV:
w = csv.writer(file('filename.csv','wb'))
w.writerows(mylist)
一個列表中的項目是一個比值,因此它包含的值等'23/54' ,‘9/12’等Excel將識別一些這些值(例如9/12),爲的日期。解決這個問題的最簡單方法是什麼?
感謝
這可能是一個簡單的辦法,但我似乎無法推測出來......寫入CSV - 字符串被識別爲日期在Excel
使用下面的代碼輸出在Python列表,以CSV:
w = csv.writer(file('filename.csv','wb'))
w.writerows(mylist)
一個列表中的項目是一個比值,因此它包含的值等'23/54' ,‘9/12’等Excel將識別一些這些值(例如9/12),爲的日期。解決這個問題的最簡單方法是什麼?
感謝
因爲csv
是一個純文本格式,你不能告訴有關如何解釋數據的Excel什麼,我很害怕。
您必須生成實際的Excel文件(例如,使用xlwt
,文檔和教程可在http://www.python-excel.org/上獲得)。
同意。我懷疑它是否將Excel中的數據表示函數「解釋」並「顯示」爲日期。原始文件應該包含格式正確的數據,如預期的那樣 –
你可以這樣做:
# somelist contains data like '12/51','9/43' etc
mylist = ["'" + val + "'" for val in somelist]
w = csv.writer(open('filename.csv','wb'))
for me in mylist:
w.writerow([me])
這將確保您的數據被寫入,因爲它是爲csv。
問題出現在格式中 - Excel自動將識別規則應用於.csv文件,並且無法將其關閉。另請參閱http://stackoverflow.com/questions/137359/excel-csv-number-cell-format –
嗯,也許作爲一種解決方法,我可以將比例列分成2列...即'9/12'變成2整數列爲9,12。 – ChrisArmstrong