2017-12-27 1042 views
1

所以我对编码非常陌生,但严重的是我没有看到我的代码出错的地方。时间戳问题:Python无法识别时间戳

所以我想要做的是一个操作,我从特定的一天减去365天。这是最简单的部分。但是当我开始用所有时间戳导入我的数组时 - 它不识别它们。有趣的是,如果我只是用手输入时间戳,它确实!

我写的是这样的:

r= '2016-12-22 00:00:00' 
u = datetime.strptime(r,"%Y-%m-%d %H:%M:%S") 
d = timedelta(days=365) 
print (u-d) 

结果:

2015-12-23 00:00:00 

但是当我使用一个索引命令,例如:

r= p_dates[254] 

这是完全一样的如:

print(p_dates[254]) 
2016-12-22 00:00:00 

它返回一个错误:

strptime()参数1必须海峡,没有时间戳

认真 - 究竟发生了什么情况发生:d会很高兴,如果有人可以帮助小白出来。

在此先感谢和节日快乐

回答

1

它说第一个参数需要是str类型。你可以检查type的任何变量,如type(variable)。这里只是从时间戳投到字符串

u = datetime.strptime(str(r),"%Y-%m-%d %H:%M:%S")