自分でアルゴリズムを実装せずに、ランダムな文字列を8桁の数字にハッシュできる方法はありますか?
質問する
168179 次
4 に答える
203
はい、組み込みhashlib
モジュールまたは組み込みhash
関数を使用できます。次に、ハッシュの整数形式でモジュロ演算または文字列スライス演算を使用して、最後の 8 桁を切り捨てます。
>>> s = 'she sells sea shells by the sea shore'
>>> # Use hashlib
>>> import hashlib
>>> int(hashlib.sha1(s.encode("utf-8")).hexdigest(), 16) % (10 ** 8)
58097614L
>>> # Use hash()
>>> abs(hash(s)) % (10 ** 8)
82148974
于 2013-04-15T06:17:59.020 に答える