我可以通过java.util.Date(milliseconds)在Java中创建一个类似的Date对象。如何在Python中创建可比较的文档?
分配一个Date对象并对其进行初始化,以表示自标准基准时间(即“epoch”)以来的指定毫秒数,即1970年1月1日00:00:00 GMT。
答案 0 :(得分:152)
只需将其转换为时间戳
即可datetime.datetime.fromtimestamp(ms/1000.0)
答案 1 :(得分:8)
这个怎么样?我认为它可以指望处理1970年之前和2038年之后的日期。
target_date_time_ms = 200000 # or whatever
base_datetime = datetime.datetime( 1970, 1, 1 )
delta = datetime.timedelta( 0, 0, 0, target_date_time_ms )
target_date = base_datetime + delta
如Python标准lib中所述:
如果时间戳不在,那么fromtimestamp()可能会引发ValueError 平台支持的值范围C localtime()或gmtime() 功能。这种情况通常限于1970年 到2038年。
答案 2 :(得分:2)
import pandas as pd
Date_Time = pd.to_datetime(df.NameOfColumn, unit='ms')
答案 3 :(得分:0)
由于使用了熊猫而有点笨,但是可以用:
import pandas as pd
pd.to_datetime(msec_from_java, unit='ms').to_pydatetime()
答案 4 :(得分:0)
将毫秒转换为日期时间(UTC):
import datetime
time_in_millis = 1596542285000
dt = datetime.datetime.fromtimestamp(time_in_millis / 1000.0, tz=datetime.timezone.utc)
按照RFC3339标准(由Open API规范使用)将日期时间转换为字符串:
from rfc3339 import rfc3339
converted_to_str = rfc3339(dt, utc=True, use_system_timezone=False)
# 2020-08-04T11:58:05Z