python 将md5转为16字节的方法


Posted in Python onMay 29, 2018

python的hashlib库中提供的hexdigest返回长度32的字符串。

直接通过digest返回的16字节,有不可打印字符。

问题来了,因为md5sum是128bit,也就是16字节,如何将python生成字符串的转为16字节呢?

请看下面代码

import hashlib
def get_md5(s):
 m = hashlib.md5(s)
 return m.hexdigest()
def convert_md5(origin):
 result = []
 s = ""
 for i in range(len(origin)):
   s += origin[i]
   if i %2 != 0 :
     int_hex = int(s, 16)
     result.append(int_hex)
     s = ""
 return result
if __name__=="__main__":
 sum = get_md5("hello world")
 print sum
 print len(sum)
 cv_sum = convert_md5(sum)
 print cv_sum
 print len(cv_sum)

output:

5eb63bbbe01eeed093cb22bb8f5acdc3 
32 
[94, 182, 59, 187, 224, 30, 238, 208, 147, 203, 34, 187, 143, 90, 205, 195] 
16

转换后输出的list是以10进制输出的每个字节表示的值,例如,最后一个字节,0xc3 == 195

以上这篇python 将md5转为16字节的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python通过imaplib模块读取gmail里邮件的方法
May 08 Python
Python调用微信公众平台接口操作示例
Jul 08 Python
python实现m3u8格式转换为mp4视频格式
Feb 28 Python
Python检查和同步本地时间(北京时间)的实现方法
Dec 03 Python
Python写一个基于MD5的文件监听程序
Mar 11 Python
python 绘制拟合曲线并加指定点标识的实现
Jul 10 Python
翻转数列python实现,求前n项和,并能输出整个数列的案例
May 03 Python
jupyter notebook的安装与使用详解
May 18 Python
python 常见的排序算法实现汇总
Aug 21 Python
Python爬虫爬取有道实现翻译功能
Nov 27 Python
pytorch 计算Parameter和FLOP的操作
Mar 04 Python
python 如何在 Matplotlib 中绘制垂直线
Apr 02 Python
python 利用栈和队列模拟递归的过程
May 29 #Python
查看django执行的sql语句及消耗时间的两种方法
May 29 #Python
让Django支持Sql Server作后端数据库的方法
May 29 #Python
Django 浅谈根据配置生成SQL语句的问题
May 29 #Python
django表单实现下拉框的示例讲解
May 29 #Python
用python编写第一个IDA插件的实例
May 29 #Python
基于python进行桶排序与基数排序的总结
May 29 #Python
You might like
做一个有下拉功能的留言版
2006/10/09 PHP
Zend Framework教程之Zend_Db_Table表关联实例详解
2016/03/23 PHP
php使用number_format函数截取小数的方法分析
2016/05/27 PHP
javascript suggest效果 自动完成实现代码分享
2012/02/17 Javascript
CSS(js)限制页面显示的文本字符长度
2012/12/27 Javascript
JavaScript中setAttribute用法介绍
2013/07/20 Javascript
JavaScript中的object转换函数toString()与valueOf()介绍
2014/12/31 Javascript
JavaScript实现数字数组按照倒序排列的方法
2015/04/06 Javascript
js制作带有遮罩弹出层实现登录注册表单特效代码分享
2015/09/05 Javascript
jQuery unbind()方法实例详解
2016/01/19 Javascript
详解Node.js模块间共享数据库连接的方法
2016/05/24 Javascript
浅谈window.onbeforeunload() 事件调用ajax
2016/06/29 Javascript
JavaScript递归操作实例浅析
2016/10/31 Javascript
JavaScript动态数量的文件上传控件
2016/11/18 Javascript
nodejs获取微信小程序带参数二维码实现代码
2017/04/12 NodeJs
JavaScript之排序函数_动力节点Java学院整理
2017/06/30 Javascript
vue 下列表侧滑操作实例代码详解
2018/07/24 Javascript
面试题:react和vue的区别分析
2019/04/08 Javascript
送你43道JS面试题(收藏)
2019/06/17 Javascript
node 标准输入流和输出流代码实例
2019/09/19 Javascript
JS常用排序方法实例代码解析
2020/03/03 Javascript
Python获取linux主机ip的简单实现方法
2016/04/18 Python
浅析Python pandas模块输出每行中间省略号问题
2018/07/03 Python
Appium+Python自动化测试之运行App程序示例
2019/01/23 Python
Python如何实现大型数组运算(使用NumPy)
2020/07/24 Python
pandas 数据类型转换的实现
2020/12/29 Python
应届生护士求职信
2013/11/01 职场文书
校企合作协议书
2014/04/16 职场文书
个人作风建设剖析材料
2014/10/11 职场文书
开展批评与自我批评发言材料
2014/10/17 职场文书
乡镇党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
小浪底导游词
2015/02/12 职场文书
2015年服务员个人工作总结
2015/05/27 职场文书
干部考核工作总结
2015/08/12 职场文书
[有人@你]你有一封绿色倡议书,请查收!
2019/07/18 职场文书
Node实现搜索框进行模糊查询
2021/06/28 Javascript