作者:倩女墨镜aaaaa_259 | 来源:互联网 | 2023-05-21 15:29
datetime.utcnow()
使用OS提供的值.
datetime.utcnow()
使用gettimeofday(2)
或time.time()
在Python 2上(gmtime(3)
并将结果转换为细分时间).
time.time()
使用gettimeofday(2)
,ftime(3)
,time(2)
.较新的CPython版本可能会使用clock_gettime(2)
,GetSystemTimeAsFileTime()
.
您可以按如下方式检查自我一致性:
#!/usr/bin/env python
import time
from datetime import datetime, timedelta
print(datetime.utcnow())
print(datetime(1970, 1, 1) + timedelta(secOnds=time.time()))
print(datetime(*time.gmtime()[:6]))
这是基于CPython源GetSystemTimeAsFileTime()
在Windows 上调用的(未经测试的)代码:
#!/usr/bin/env python
import ctypes.wintypes
from datetime import datetime, timedelta
def utcnow_microseconds():
system_time = ctypes.wintypes.FILETIME()
ctypes.windll.kernel32.GetSystemTimeAsFileTime(ctypes.byref(system_time))
large = (system_time.dwHighDateTime <<32) + system_time.dwLowDateTime
return large // 10 - 11644473600000000
print(datetime(1970, 1, 1) + timedelta(microsecOnds=utcnow_microseconds()))
这是调用clock_gettime()
Python 2的代码.
1> jfs..:
datetime.utcnow()
使用OS提供的值.
datetime.utcnow()
使用gettimeofday(2)
或time.time()
在Python 2上(gmtime(3)
并将结果转换为细分时间).
time.time()
使用gettimeofday(2)
,ftime(3)
,time(2)
.较新的CPython版本可能会使用clock_gettime(2)
,GetSystemTimeAsFileTime()
.
您可以按如下方式检查自我一致性:
#!/usr/bin/env python
import time
from datetime import datetime, timedelta
print(datetime.utcnow())
print(datetime(1970, 1, 1) + timedelta(secOnds=time.time()))
print(datetime(*time.gmtime()[:6]))
这是基于CPython源GetSystemTimeAsFileTime()
在Windows 上调用的(未经测试的)代码:
#!/usr/bin/env python
import ctypes.wintypes
from datetime import datetime, timedelta
def utcnow_microseconds():
system_time = ctypes.wintypes.FILETIME()
ctypes.windll.kernel32.GetSystemTimeAsFileTime(ctypes.byref(system_time))
large = (system_time.dwHighDateTime <<32) + system_time.dwLowDateTime
return large // 10 - 11644473600000000
print(datetime(1970, 1, 1) + timedelta(microsecOnds=utcnow_microseconds()))
这是调用clock_gettime()
Python 2的代码.