文字列を8桁にハッシュ化するにはどうすればいいですか? 質問する

文字列を8桁にハッシュ化するにはどうすればいいですか? 質問する

自分でアルゴリズムを実装せずに、ランダムな文字列を 8 桁の数字にハッシュする方法はありますか?

ベストアンサー1

はい、内蔵の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

おすすめ記事