![](/img/trans.png)
[英]Python 'datetime.timedelta' object has no attribute 'time' error
[英]Insert with Python into InfluxDb error: 'datetime.timedelta' object has no attribute 'total_seconds'
当我运行Python客户端以特定的时间戳将数据插入InfluxDb时,它将返回此错误: 'datetime.timedelta'对象没有属性'total_seconds' 。 我在github上找到了将方法total_seconds()
定义为一些timeutils.py
文件的内容。 这是代码:
from datetime import datetime
def total_seconds(td):
# Keep backward compatibility with Python 2.6 which doesn't have
# this method
if hasattr(td, 'total_seconds'):
return td.total_seconds()
else:
return (td.microseconds + (td.seconds + td.days * 24 * 3600) * 10**6) / 10**6
def convert_to_epoch(timestamp):
diff = (timestamp - datetime(1970, 1, 1))
seconds = int(diff.total_seconds())
seconds = int(total_seconds(diff))
return seconds
我找不到timeutils.py。 Python版本是2.6,我无法更新到2.7。 我应该在哪里添加该功能以使客户端正常工作?
我只是将其添加到发生错误的相同文件中。 这是一个独立的函数,不是类方法,因此您必须将调用行从
seconds = int(diff.total_seconds())
至
seconds = int(total_seconds(diff))
或类似的东西。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.