2012-06-03 17 views

回答

2

386CC4F0(十六进制)== 946652400(dec)
946652400是Unix时间戳1999-12-31 15:00:00 GMT。

import time 
print hex(int(time.mktime(time.strptime('1999-12-31 15:00:00', '%Y-%m-%d %H:%M:%S'))) - time.timezone) 
+0

'time.timezone'不应该被用在这里。如果输入时间是UTC,则应该使用'calendar.timegm()'而不是'time.mktime()'。 – jfs

1
#!/usr/bin/env python3 
import binascii 
import struct 
from datetime import datetime 

# convert time string into datetime object 
dt = datetime.strptime('1999-12-31 09:00:00', '%Y-%m-%d %H:%M:%S') 

# get seconds since Epoch 
timestamp = dt.timestamp() # assume dt is a local time 

# print the timestamp as 4 byte hex (little-endian order) 
print(binascii.hexlify(struct.pack('<I', round(timestamp)))) 
# -> b'f0c46c38' 
相关问题