Python生成MD5值的两种方法实例分析


Posted in Python onApril 26, 2019

本文实例讲述了Python生成MD5值的两种方法。分享给大家供大家参考,具体如下:

# -*- coding:utf-8 -*-
import datetime
# NO.1 使用MD5
import md5
src = 'this is a md5 test.'
m1 = md5.new()
m1.update(src)
print m1.hexdigest()

运行结果:

174b086fc6358db6154bd951a8947837

# -*- coding:utf-8 -*-
# NO.2 使用hashlib
import hashlib
src = 'this is a md5 test.'
m2 = hashlib.md5()
m2.update(src)
print m2.hexdigest()

运行结果:

174b086fc6358db6154bd951a8947837

对于同一个字符串而言,使用MD5和使用hashlib生成的MD5值是一样的

以下是使用file+时间戳生成一个唯一的MD5值

# -*- coding:utf-8 -*-
import md5
import time
now = 'file'+str(time.time())
print now,type(now)
m0 = md5.new()
m0.update(now)
print m0.hexdigest()

运行结果:

file1556241051.38 <type 'str'>
efdc1e1d6bbe949afb2cd0250d0244d2

############### 封装成函数 ###############################
# -*- coding:utf-8 -*-
import time
import hashlib
src = 'file'+str(time.time())
print src,type(src)
m2 = hashlib.md5()
m2.update(src)
file_id = m2.hexdigest()
print file_id,type(file_id)
def make_file_id(src):
  m1 = hashlib.md5()
  m1.update(src)
  return m1.hexdigest()
src = 'filed_46546546464631361sdfsdfgsdgfsdgdsgfsd'+str(time.time())
print make_file_id(src)

运行结果:

file1556241114.08 <type 'str'>
4d826f2298853d5f5ae209d6bf754b62 <type 'str'>
e6c5ad9dd0fa4f3d141f94b7c990710e

Python 相关文章推荐
Python数组定义方法
Apr 13 Python
Python的collections模块中的OrderedDict有序字典
Jul 07 Python
Python实现将sqlite数据库导出转成Excel(xls)表的方法
Jul 17 Python
实例讲解python中的序列化知识点
Oct 08 Python
Python设计模式之外观模式实例详解
Jan 17 Python
pytorch 实现删除tensor中的指定行列
Jan 13 Python
Python发送邮件封装实现过程详解
May 09 Python
Matplotlib 绘制饼图解决文字重叠的方法
Jul 24 Python
基于python实现坦克大战游戏
Oct 27 Python
在pyCharm中下载第三方库的方法
Apr 18 Python
Python基本数据类型之字符串str
Jul 21 Python
基于Python编写一个监控CPU的应用系统
Jun 25 Python
十个Python练手的实战项目,学会这些Python就基本没问题了(推荐)
Apr 26 #Python
Python生成rsa密钥对操作示例
Apr 26 #Python
python利用Opencv实现人脸识别功能
Apr 25 #Python
Python OpenCV利用笔记本摄像头实现人脸检测
Aug 20 #Python
python使用KNN算法识别手写数字
Apr 25 #Python
Python3.5运算符操作实例详解
Apr 25 #Python
Python对象转换为json的方法步骤
Apr 25 #Python
You might like
Oracle 常见问题解答
2006/10/09 PHP
php流量统计功能的实现代码
2012/09/29 PHP
php语言流程控制中的主动与被动
2012/11/05 PHP
iis 7下安装laravel 5.4环境的方法教程
2017/06/14 PHP
PHP实现微信图片上传到服务器的方法示例
2017/06/29 PHP
thinkPHP5框架设置404、403等http状态页面的方法
2018/06/05 PHP
jQuery UI Datepicker length为空或不是对象错误的解决方法
2010/12/19 Javascript
javascript parseInt() 函数的进制转换注意细节
2013/01/08 Javascript
JavaScript DOM 编程艺术(第2版)读书笔记(JavaScript的最佳实践)
2013/10/01 Javascript
js导出table数据到excel即导出为EXCEL文档的方法
2013/10/10 Javascript
浅谈重写window对象的方法
2014/12/29 Javascript
javascript给span标签赋值的方法
2015/11/26 Javascript
jQuery查找节点并获取节点属性的方法
2016/09/09 Javascript
jQuery实现的页面弹幕效果【测试可用】
2018/08/17 jQuery
C#程序员入门学习微信小程序的笔记
2019/03/05 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
VUE 动态组件的应用案例分析
2019/12/02 Javascript
Javascript中的this,bind和that使用实例
2019/12/05 Javascript
微信小程序实现watch监听
2020/06/04 Javascript
jQuery 实现扁平式小清新导航
2020/07/07 jQuery
[01:01:31]2018DOTA2亚洲邀请赛3月29日小组赛B组 Mineski VS paiN
2018/03/30 DOTA
Python不使用int()函数把字符串转换为数字的方法
2018/07/09 Python
Python面向对象程序设计示例小结
2019/01/30 Python
Ubuntu18.04下python版本完美切换的解决方法
2019/06/14 Python
Win10 安装PyCharm2019.1.1(图文教程)
2019/09/29 Python
关于Tensorflow分布式并行策略
2020/02/03 Python
python异步Web框架sanic的实现
2020/04/27 Python
HTML5印章绘制电子签章图片(中文英文椭圆章、中文英文椭圆印章)
2019/06/03 HTML / CSS
澳大利亚婴儿喂养品牌:Cherub Baby
2018/11/01 全球购物
餐饮收银员岗位职责
2014/02/07 职场文书
小学生成绩单评语
2014/12/31 职场文书
值班管理制度范本
2015/08/06 职场文书
python基于tkinter制作m3u8视频下载工具
2021/04/24 Python
Redis命令处理过程源码解析
2022/02/12 Redis
Python中的 No Module named ***问题及解决
2022/07/23 Python
Go中使用gjson来操作JSON数据的实现
2022/08/14 Golang