Python3.7模块之hashlib
生活随笔
收集整理的這篇文章主要介紹了
Python3.7模块之hashlib
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Python的hashlib提供了常見的摘要算法,如MD5,SHA1等等
這里以hashlib舉例:
出現以下錯誤:
D:\PycharmProjects\untitled\venv\Scripts\python.exe D:\PycharmProjects\untitled\myself\test2.py Traceback (most recent call last):File "D:\PycharmProjects\untitled\myself\test2.py", line 4, in <module>md.update("你好") TypeError: Unicode-objects must be encoded before hashing由上圖可知我們是沒有對字符串進行編碼
因為update()的括號里不支持將字符串對象引入,因為哈希在字節上工作,而不在字符或字符串上工作。通俗點說就是,必須要將update括號里的字符串以一種編碼格式(最好是utf-8)進行編碼,轉換為字節(bytes)格式
所以update后面的括號里的字符串必須進行編碼,轉換成字節
hexdigest(…) 以16進制形式返回加密內容
這里以hashlib中md5加密為例:
與hexdigest對應的還有:
digest(…) 以字符形式返回加密內容
注:字符不同于字符串,字符是指計算機中使用的文字和符號,不是字節,例如1、2、3、a、b、c、A、B、C、~、@、#、¥、%、\、/等等
總結
以上是生活随笔為你收集整理的Python3.7模块之hashlib的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 有含义的四字成语网名138个
- 下一篇: 高兴的反义词