Python2中没有这个问题
python3中
hashlib.md5(data)函数中data 参数的类型应该是bytes
hash前必须把数据转换成bytes类型

Python 2.7.12 (default, Dec  4 2017, 14:50:18) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from hashlib import md5
>>> name = md5("hello")
>>> print(name.hexdigest())
5d41402abc4b2a76b9719d911017c592
Python 3.5.2 (default, Nov 23 2017, 16:37:01) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from hashlib import md5
>>> name = md5("hello")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: Unicode-objects must be encoded before hashing
>>> name = md5("hello".encode("utf-8"))
>>> print(name.hexdigest())
5d41402abc4b2a76b9719d911017c592

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-09
  • 2021-07-03
  • 2021-05-14
猜你喜欢
  • 2022-12-23
  • 2021-12-29
  • 2021-07-28
  • 2022-12-23
  • 2021-06-12
  • 2022-12-23
  • 2021-12-22
相关资源
相似解决方案