如何从unix时间中获取正确的日期时间值?

2024-10-01 15:40:41 发布

您现在位置:Python中文网/ 问答频道 /正文

UNIX时间戳

  1262304000
  1224633600
  940636800
  939772800
  1332288000
  1096934400
  1088121600    
   ...

1.试试看

frmt_date = dt.datetime.utcfromtimestamp(1088121600).strftime("%Y/%m/%d %H:%M")

时间值结果为00:00。你知道吗

(结果)

 2012-10-11 00:00
 2004-04-20 00:00
 1999-01-07 00:00
 ....
  1. 试试看

     def xldate_to_datetime(xldate):
     temp = dt.datetime(1899, 12, 30)
     delta = dt.timedelta(days=xldate)
     return temp+delta
     ts = "1262304000"
     tsxl = ((int(ts)/60)/60)/24 + 25569
     readabledate =  xldate_to_datetime(tsxl)
     print(readabledate)
    

时间值结果均为00:00。你知道吗

我怎样才能从那些UNIX https://i.stack.imgur.com/khDmi.jpg获得适当的时间


Tags: todatetimedate时间dtunixtempdelta
2条回答

另一种方法

>>> mytime =  1332288000
>>> import datetime as dt
>>> frmt_date = dt.datetime.utcfromtimestamp(mytime).strftime("%Y/%m/%d %H:%M")
>>> print(frmt_date)
2012/03/21 00:00
>>> mytime =  mytime + 10000
>>> frmt_date = dt.datetime.utcfromtimestamp(mytime).strftime("%Y/%m/%d %H:%M")
>>> print(frmt_date)
2012/03/21 02:46

所以,你的约会时间是00:00

转换都是正确的。你知道吗

时间戳都恰好是从1970年1月1日午夜开始的秒,其mod (3600 * 24)为0,即所有时间戳都对应于UTC中某个日期的午夜。你知道吗

您可以快速确认这一点,而无需实际转换为datetime对象:

assert all(t % 86400 == 0 for t in timestamps) 

相关问题 更多 >

    热门问题