为了账号安全,请及时绑定邮箱和手机立即绑定

如何获得自 1970 年 1 月 1 日以来 Python 日期时间对象的秒数?

如何获得自 1970 年 1 月 1 日以来 Python 日期时间对象的秒数?

达令说 2022-05-19 15:35:57
我正在使用 Python 3.7 和 Django。我想获取日期时间对象自 1970 年 1 月 1 日以来的秒数(或毫秒)。按照这里的建议——在 Python 中,如何将 `datetime` 对象转换为秒?,我实现了now = datetime.now()...return [len(removed_elts) == 0, score, now.total_seconds()]但是“now.total_seconds()”行给出了错误AttributeError: 'datetime.datetime' object has no attribute 'total_seconds'自 1970 年 1 月 1 日以来获得秒数的正确方法是什么?
查看完整描述

3 回答

?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

与您提到的建议相反,您不调用total_seconds()对象timedelta而是调用datetime对象,该对象根本没有此属性。


因此,Python 3.7(和 2.7)的一种解决方案可以是:


import datetime


now = datetime.now()

then = datetime.datetime(1970,1,1)

...

return [len(removed_elts) == 0, score, (now - then).total_seconds()]

Python 3.3+ 的另一个更短但不太清晰(至少乍一看)的解决方案(此问题归功于ababak):


import datetime


now = datetime.now()

...

return [len(removed_elts) == 0, score, now.timestamp()]


查看完整回答
反对 回复 2022-05-19
?
www说

TA贡献1775条经验 获得超8个赞

import time

print(time.time())

输出:


1567532027.192546


查看完整回答
反对 回复 2022-05-19
?
慕姐8265434

TA贡献1813条经验 获得超2个赞

这应该有效。


import datetime

first_date = datetime.datetime(1970, 01, 01)

time_since = datetime.datetime.now() - first_date

seconds = int(time_since.total_seconds())


查看完整回答
反对 回复 2022-05-19
  • 3 回答
  • 0 关注
  • 272 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信