【发布时间】:2010-12-13 19:02:57
【问题描述】:
我想使用 python 2.4/2.5 将浮点数(time.time() 的输出)转换为十六进制。
我发现了大量将十六进制转换为浮点数的示例,但我找不到任何可以让我做 python >= 2.6 的 float.hex() 所做的事情。
【问题讨论】:
-
如果您说为什么要这样做会有所帮助,例如什么会消耗十六进制字符串?
-
我需要它来创建一个唯一标识符(连同其他东西)。如果你想知道为什么,答案是:这不是我的选择。
-
如果您不需要能够从唯一 id 中恢复时间,而您只是希望不同的时间产生不同的数字,请尝试 hash(time.time()) 获取整数和 hex(hash(time.time())) 以获取 '0xBLAHBLAH' 形式的字符串。
-
@Russell Borogove: aarrgghh
hash(x) == hash(y) and x != y可以评估为True...他希望它是 UNIQUE -
如果你想要一个唯一的标识符,只需使用 uuid 模块 (docs.python.org/library/uuid.html) - 它就是为此而制作的。
标签: python floating-point hex