我正在尝试创建一个 TOTP 生成器。这需要一个使用以下公式的“计数器值”:计算计数器值
CT Count of the number of durations TX between T0 and T
T Current time or Unix time
T0 some epoch (eg. Unix epoch is 0)
TX length of one time duration (eg 30 seconds)
我的代码是:
from datetime import datetime
import math
window = 60
epoch = datetime.utcfromtimestamp(0)
timenow = datetime.now()
timekey = math.floor((timenow - epoch).total_seconds() / window)
print(timekey)
但是,当在我的本地 linux 机器上运行时,这会导致值略有不同,与 tio.run(不确定是什么操作系统)相比,我没有方便测试的 windows 或 macOS 机器。
我的机器:26654068
TIO:26654008
为什么我的代码没有产生相同的值?日期时间函数之一没有达到我的预期吗?