我有一個很大的.csv文件,其中存儲的數據來自某些記錄。其中一個領域有錄製的時間,我需要做一個轉換,以便以後與他們合作。Python - 通過.csv列在循環中進行時間轉換
*Col 0, hh:mm:ss, col 2, col 3,...*
我知道如何使用單個值進行時間轉換,它具有單個值。這工作,
import decimal
from datetime import datetime
time = "14:55:36.629"
(hour,min,sec) = time.split(':')
result = int(hour) * 3600 + int(min) * 60 + float(sec)
decimal.Decimal(result)
但我無法將其插入一個循環
with open('input.csv', 'r') as inf, open('output.csv','wb') as outf:
for row in inf:
t = row[1]
(h,m,s) = row[1].split(':') # Error here
result = int(h) * 3600 + int(m) * 60 + float(s)
decimal.Decimal(result)
outcsv = csv.writer(outf, delimiter=',')
我卡與轉換,但在同一時間,我不知道以後是否我d能夠將信息寫入其他文件。我如何將所有值轉換並解析爲列?
對於我來說,寫下原始文件而不是打開另一個文件並在其中寫入信息也可以。
您不是以CSV格式讀取文件 - 「行[1]」是*單個字符*。 – jonrsharpe