【问题标题】:How save datetime objects in list (python, csv)如何在列表中保存日期时间对象(python,csv)
【发布时间】:2019-09-04 05:18:59
【问题描述】:

谁能告诉我如何将解析的日期时间对象保存到列表中?请在出现问题的最后一条评论之后查看代码 - 为什么我会收到 AttributeError:'datetime.datetime' 对象没有属性 'toList'?谢谢!

from datetime import datetime, timedelta
import pandas as pd

from dateutil.parser import parse

csvFile = pd.read_csv('myFile.csv')
column = csvFile['timestamp']

column = column.str.slice(0, 19, 1)

dt1 = datetime.strptime(column[1], '%Y-%m-%d %H:%M:%S')

print("dt1", dt1) #output: dt1 2010-12-30 15:06:00

dt2 = datetime.strptime(column[2], '%Y-%m-%d %H:%M:%S')

print("dt2", dt2) #output: dt2 2010-12-30 16:34:00

dt3 = dt1 - dt2

print("dt3", dt3) #output: dt3 -1 day, 22:32:00

#works:
for row in range(len(column)):
    timestamp = datetime.strptime(column[row], '%Y-%m-%d %H:%M:%S')
    print("timestamp", timestamp) #output (excerpt): timestamp     2010-12-30 14:32:00 timestamp 2010-12-30 15:06:00

#trying to save all parsed timestamps in list, NOT WORKING
myNewList = timestamp.toList()
print(myNewList)

【问题讨论】:

    标签: python list csv datetime timestamp


    【解决方案1】:

    你应该在 for 循环之前创建列表,然后在循环中添加每个元素,如下所示:

    myNewList = []
    #works:
    for row in range(len(column)):
        timestamp = datetime.strptime(column[row], '%Y-%m-%d %H:%M:%S')
        print("timestamp", timestamp) 
        myNewList.append(timestamp)
    
    print(myNewList)
    

    【讨论】:

    • 非常感谢,但它不起作用。应用完全相同的代码,现在得到“TypeError: 'builtin_function_or_method' object is not subscriptable”。
    • 对不起,我用 [],而不是 ()。我在我的回答中更新了这一行:myNewList.append(timestamp)
    猜你喜欢
    • 2017-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    • 2013-01-06
    相关资源
    最近更新 更多