python에는 hash를 사용하기 위한 라이브러리들이 내장되어 있다.
그 중 md5를 이용하여 아래와 같이 해시 값을 생성할 수 있다.
from hashlib import md5
data = 'a'
hash_value = md5(data.encode('utf8')).hexdigest()
print (hash_value)
아래 파이썬 문서를 확인해보면 해시 알고리즘 생성자는 sha1, sha224, sha256, sha384, sha512, blake2b, blake2s가 있고 md5는 일반적으로 사용할 수 있지만 드물게 빠지는 경우가 있다고 한다.
https://docs.python.org/ko/3/library/hashlib.html
위와 같이 해시를 생성한경우 아래와 같이 key로 활용하게 되면 중복되는 경우에서 자유롭다.
from hashlib import md5
datam = ['tistory', 'blog']
dict={}
for data in datam:
key = md5(data.encode('utf8')).hexdigest()
dict[key] = 'data'
print (dict)
{'7260b361e0a26d24cd9602b4e84ba811': 'data', '126ac9f6149081eb0e97c2e939eaad52': 'data'}
'Dev > Python' 카테고리의 다른 글
[Python] if val 과 if val is not None 어떤 것을 사용해야 하는가 (0) | 2021.11.08 |
---|---|
[django] ModelForm을 사용하여 데이터 등록 (0) | 2021.10.31 |
[Python] 내장 함수 __str__, __repr__ (0) | 2021.10.23 |
[Python] Garbage Collector (0) | 2021.10.19 |
[django] 관리자 계정 생성 (0) | 2021.10.18 |