Python MD5加密实例详解

yipeiwu_com7年前Python基础

详解Python MD5加密

Python 3下MD5加密

# 由于MD5模块在python3中被移除
# 在python3中使用hashlib模块进行md5操作

import hashlib

# 待加密信息
str = 'this is a md5 test.'

# 创建md5对象
hl = hashlib.md5()

# Tips
# 此处必须声明encode
# 若写法为hl.update(str) 报错为: Unicode-objects must be encoded before hashing
hl.update(str.encode(encoding='utf-8'))

print('MD5加密前为 :' + str)
print('MD5加密后为 :' + hl.hexdigest())

运行结果

封装Python3下MD5加密

# 生成MD5
def genearteMD5(str):
  # 创建md5对象
  hl = hashlib.md5()

  # Tips
  # 此处必须声明encode
  # 否则报错为:hl.update(str)  Unicode-objects must be encoded before hashing
  hl.update(str.encode(encoding='utf-8'))

  print('MD5加密前为 :' + str)
  print('MD5加密后为 :' + hl.hexdigest())

Python2版本中带有MD5模块生成MD5 如下

import md5

src = 'this is a md5 test.'
m1 = md5.new()
m1.update(src.encode(encoding='utf-8'))
print(m1.hexdigest())

如有疑问请留言或者到本站社区交流讨论,以上就是Python MD5加密的详解,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

python求crc32值的方法

本文实例讲述了python求crc32值的方法。分享给大家供大家参考。具体实现方法如下: 要想求CRC值,前面要import binascii binascii.crc32(v)&nbs...

python time模块用法实例详解

本文详细讲述了python的内嵌time模块的用法。分享给大家供大家参考之用。具体分析如下:   一、简介 time模块提供各种操作时间的函数 说明:一般有两种表示时间的方式...

Python优先队列实现方法示例

本文实例讲述了Python优先队列实现方法。分享给大家供大家参考,具体如下: 1. 代码 import Queue import threading class Job(object...

详谈python3中用for循环删除列表中元素的坑

for循环语句的对象是可迭代对象,可迭代对象需要实现__iter__或iter方法,并返回一个迭代器,什么是迭代器呢?迭代器只需要实现 __next__或next方法。 现在来验证一下列...

Python2.7版os.path.isdir中文路径返回false的解决方法

问题背景: 本来想写一个脚本来处理硬盘里的文件,并进行分类处理,但是发现一个问题,使用python内置os模块里的方法出现一些问题,具体的见示例。 主要使用的方法(python 2.7版...