在Python中将字符串转换为十进制
我们可以使用以下函数将一个datetime
值转换成小数。
import time
from datetime import datetime
t = datetime.now()
t1 = t.timetuple()
print time.mktime(t1)
输出结果:
Out[9]: 1395136322.0
同样,有没有办法用Python将字符串转换成decimal
呢?
示例字符串:
"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:27.0) Gecko/20100101 Firefox/27.0"
2 个回答
3
如果你想用一个整数来唯一标识一个字符串,我建议你使用哈希函数,比如SHA。它们对于相同的输入总是会返回相同的值。
import hashlib
def sha256_hash_as_int(s):
return int(hashlib.sha256(s).hexdigest(), 16)
如果你使用的是Python 3,首先需要把s
编码成某种具体的编码格式,比如UTF-8。
另外,可以看看hashlib
这个模块,想想你是否真的需要一个整数,或者hexdigest()
的输出是否也可以满足你的需求。
0
你可以使用 hash 函数:
>>> hash("Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:27.0) Gecko/20100101 Firefox/27.0")
1892010093