首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Python中从毫秒创建datetime?

如何在Python中从毫秒创建datetime?
EN

Stack Overflow用户
提问于 2009-04-14 17:01:03
回答 5查看 182.8K关注 0票数 186

我可以用java.util.Date(milliseconds)在Java语言中创建一个类似的Date对象。如何在Python中创建可比较的?

分配一个Date对象并对其进行初始化,使其表示自称为“纪元”的标准基准时间(即1970年1月1日,格林尼治标准时间00:00:00 )以来指定的毫秒数。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-04-14 17:12:52

只需将其转换为时间戳

代码语言:javascript
复制
datetime.datetime.fromtimestamp(ms/1000.0)
票数 301
EN

Stack Overflow用户

发布于 2015-07-25 18:01:33

那这个呢?我假设它可以处理1970年之前和2038年之后的日期。

代码语言:javascript
复制
target_datetime_ms = 200000 # or whatever
base_datetime = datetime.datetime(1970, 1, 1)
delta = datetime.timedelta(0, 0, 0, target_datetime_ms)
target_datetime = base_datetime + delta

正如Python标准库中所提到的:

如果时间戳超出了平台C的localtime()或

()函数支持的值范围,则来自timestamp ()的时间可能会引发ValueError。这通常被限制在1970年到2038年之间。

很明显,这可以用一行代码来完成:

代码语言:javascript
复制
target_dt = datetime(1970, 1, 1) + timedelta(milliseconds=target_dt_ms)
票数 17
EN

Stack Overflow用户

发布于 2019-02-22 00:00:21

由于使用了pandas,所以有点笨重,但效果很好:

代码语言:javascript
复制
import pandas as pd
pd.to_datetime(msec_from_java, unit='ms').to_pydatetime()
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/748491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档