假设我的时间戳如下:
ts=1549366296466
我有一个具有DateTimeField的模型,如下所示:
class MyTime(models.Model):
date_and_time = models.DateTimeField()
现在假设存在类“ MyTime”的对象“ o”?如何使用此时间戳并将其保存到对象“ o”?
o.date_and_time = #I need your help here.
o.save()
我知道如何将其转换为“日期时间”格式。可以使用以下方法进行操作。
import datetime
#First i will convert timestamp into seconds format by dividing by 1000.0
ts = ts/1000.0
#Then i will use this 'ts' in the following line of code.
datetime.utcfromtimestamp(ts).strftime('%Y-%m-%d %H:%M:%S')
答案 0 :(得分:1)
datetime
对象有一个.utcfromtimestamp
method [Python-doc]。唯一的区别是此时间戳测量的是自1970年以来的秒数,而不是毫秒数,因此我们可以使用以下方式进行转换:
from datetime import datetime
o.date_and_time = datetime.utcfromtimestamp(ts/1000)
这给我们以下两个结果:
2019-02-05 11:31:36.466000
或者对于自定义时区,我们可以使用.fromtimestamp
method [Python-doc]:
from dateutil import tz
from datetime import datetime
o.date_and_time = datetime.fromtimestamp(ts/1000, tz=tz.gettz('Asia/Kolkata'))
然后产生:
2019-02-05 17:01:36.466000+05:30