gpt4 book ai didi

python - 要 float 的日期时间不包括毫秒

转载 作者:太空宇宙 更新时间:2023-11-04 03:36:13 27 4
gpt4 key购买 nike

下面的代码没有将毫秒转换为 float 。什么是正确的做法?

import datetime

def date2float(datestr):
format = "%Y-%m-%d %H:%M:%S.%f"
dateobj = datetime.datetime.strptime(datestr, format)
print dateobj
dtfloat = mktime(dateobj.timetuple())
print dtfloat
return dtfloat

date2float("2015-03-08 10:34:01.2")
date2float("2015-03-08 10:34:01.4")

当前输出为:

2015-03-08 10:34:01.200000
1425828841.0
2015-03-08 10:34:01.400000
1425828841.0

很明显,0.2 和 0.4 丢失了。

最佳答案

mktime 不处理小数秒。您可以手动添加微秒:

def date2float(datestr):
format = "%Y-%m-%d %H:%M:%S.%f"
dateobj = datetime.datetime.strptime(datestr, format)
dtfloat = mktime(dateobj.timetuple())
dtfloat += dateobj.microsecond / 1000000.0
return dtfloat

在 Python 3.3+ 中:

>>> import datetime
>>> datetime.datetime.now().timestamp()
1425826728.740325

关于python - 要 float 的日期时间不包括毫秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28929151/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com