Python 获取此格式的日期时间并转换为4字节十六进制

Python 获取此格式的日期时间并转换为4字节十六进制,python,datetime,hex,Python,Datetime,Hex,我有一个这种格式的日期时间 1999-12-31 09:00:00 它来自十六进制值: F0C46C38 如何将上述格式的日期时间值转换为4字节十六进制? 我上面发布的值是相互补充的。第二个代码块中的十六进制是反向的 谢谢大家! 386CC4F0(十六进制)==946652400(十二进制) 946652400是1999-12-31 15:00:00 GMT的Unix时间戳 import time print hex(int(time.mktime(time.strptime('1999-1

我有一个这种格式的日期时间

1999-12-31 09:00:00
它来自十六进制值:

F0C46C38
如何将上述格式的日期时间值转换为4字节十六进制? 我上面发布的值是相互补充的。第二个代码块中的十六进制是反向的

谢谢大家!

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

import time
print hex(int(time.mktime(time.strptime('1999-12-31 15:00:00', '%Y-%m-%d %H:%M:%S'))) - time.timezone)
#/usr/bin/env蟒蛇3
导入binascii
导入结构
从日期时间导入日期时间
#将时间字符串转换为datetime对象
dt=datetime.strtime('1999-12-31 09:00:00','%Y-%m-%d%H:%m:%S'))
#从新纪元开始获得秒数
timestamp=dt.timestamp()#假设dt是本地时间
#将时间戳打印为4字节十六进制(小尾端顺序)

打印(binascii.hexlify(struct.pack)(“
time.timezone
不应在此处使用。如果输入时间为UTC,则应使用
calendar.timegm()
而不是
time.mktime()
)。
#!/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'