converting 13-digit unixtime in ms to timestamp in python

后端 未结 2 1628
一个人的身影
一个人的身影 2021-01-12 18:53

I want to convert 13-digit Unix-time in milliseconds to the timestamp :

\"1523126888080\"==>> %Y-%m-%d %H:%M:%S

I have tried the following code from this lin

相关标签:
2条回答
  • 2021-01-12 19:17

    You have a millisecond-precise timestamp so first divide it by 1000 then feed it to datetime.datetime.fromtimestamp() for local timezone (or pass datetime.tzinfo of the target timezone as a second argument) or datetime.datetime.utcfromtimestamp() for UTC. Finally, use datetime.datetime.strftime() to turn it into a string of your desired format.

    import datetime
    
    timestamp = "1523126888080"
    your_dt = datetime.datetime.fromtimestamp(int(timestamp)/1000)  # using the local timezone
    print(your_dt.strftime("%Y-%m-%d %H:%M:%S"))  # 2018-04-07 20:48:08, YMMV
    
    0 讨论(0)
  • 2021-01-12 19:17

    Try dividing 1523126888080 by 1000 to get a valid timestamp.
    You should also use %d instead of %D as argument for strftime, i.e:

    import time
    ts = 1523126888080 / 1000
    print(time.strftime("%d %H:%M", time.localtime(ts)))
    # 29 21:04
    
    0 讨论(0)
提交回复
热议问题