最近需要使用python获取字符串的md5值。

今天把代码贴出来和大家分享一下。

01 #!/usr/bin/env python
02 # -*- coding: cp936 -*-
03 import hashlib
04  
05 def get_md5_value(src):
06     myMd5 = hashlib.md5()
07     myMd5.update(src)
08     myMd5_Digest = myMd5.hexdigest()
09     return myMd5_Digest
10  
11 def get_sha1_value(src):
12     mySha1 = hashlib.sha1()
13     mySha1.update(src)
14     mySha1_Digest = mySha1.hexdigest()
15     return mySha1_Digest
16  
17 if __name__== '__main__':
18     src = 'aaa'
19     result_md5_value=get_md5_value(src)
20     result_sha1_value=get_sha1_value(src)
21     print 'source string: ', src
22     print 'MD5: ', result_md5_value
23     print 'SHA1: ', result_sha1_value

python还是很强大的,这里是调用了内置的hashlib.md5()方法。

验证:

写完python的方法之后,我们还需要对这个python程序进行正确性的验证。

可以在linux上执行下面的命令:

echo -n 'aaa'|md5sum|cut -d ' ' -f1

得到的值是:47bce5c74f589f4867dbd57e9ca9f808  与python脚本运行的结果相同。

原创文章,转载请注明: 转载自成长的企鹅

本文链接地址: 教你使用python获得字符串的md5值

关于我:成长的企鹅简介

教你使用python获得字符串的md5值的更多相关文章

  1. python检测文件的MD5值

    python检测文件的MD5值MD5(单向散列算法)的全称是Message-Digest Algorithm 5(信息-摘要算法),经MD2.MD3和MD4发展而来.MD5算法的使用不需要支付任何版权 ...

  2. python计算文件的md5值

    前言 最近要开发一个基于python的合并文件夹/目录的程序,本来的想法是基于修改时间的比较,即判断文件有没有改变,比较两个文件的修改时间即可.这个想法在windows的pc端下测试没有问题. 但是当 ...

  3. MD5算法【计算文件和字符串的MD5值】

    1. MD5算法是一种散列(hash)算法(摘要算法,指纹算法),不是一种加密算法(易错).任何长度的任意内容都可以用MD5计算出散列值.MD5的前身:MD2.MD3.MD4.介绍工具:CalcMD5 ...

  4. linux下md5sum用法 (查看文件或字符串的md5值)

    MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5 全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意长度的信息逐位进行计算,产生一个二进制长 ...

  5. Python访问字符串中的值

    Python访问字符串中的值: 1.可以使用索引下标进行访问,索引下标从 0 开始: # 使用索引下标进行访问,索引下标从 0 开始 strs = "ABCDEFG" print( ...

  6. Python 访问字符串中的值

    Python 访问字符串中的值 Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用.高佣联盟 www.cgewang.com Python 访问子字符串,可以使用方括号来 ...

  7. Python 3 字符串转MD5形式

    Python 字符串转MD5: def getStrAsMD5(parmStr): #1.参数必须是utf8 #2.python3所有字符都是unicode形式,已经不存在unicode关键字 #3. ...

  8. Python 用hashlib求中文字符串的MD5值 (转自 haungrui的专栏)

    使用过hashlib库的朋友想必都遇到过以下的错误吧:“Unicode-objects must be encoded before hashing”,意思是在进行md5哈希运算前,需要对数据进行编码 ...

  9. Swift - 获取字符串的MD5值

    MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致.是计算机广泛使用的杂凑算法之一(又译摘要算法.哈希算法),主流编程语言普遍已有MD5实现. ...

随机推荐

  1. 在cad中画一条长500mm,垂直90度的线段

    视频教程奉上 方法1.点击线段按钮,鼠标指定一点,输入500,再输入<90. 方法2,点击线段按钮,鼠标指定一点,输入500,按tab,再输入90.

  2. C语言入门(9)——局部变量与全局变量

    变量有效性的范围称变量的作用域.C语言中所有的量都有自己的作用域.变量说明的方式不同,其作用域也不同. C语言中的变量,按作用域范围可分为两种,即局部变量和全局变量.   局部变量 局部变量也称为内部 ...

  3. Android之Service与IntentService的比较

    Android之Service与IntentService的比较  不知道大家有没有和我一样,以前做项目或者练习的时候一直都是用Service来处理后台耗时操作,却很少注意到还有个IntentServ ...

  4. poj1833---字典序算法

    题意:给定一个序列,求它的下k个排列 #include <stdio.h> #include <stdlib.h> int cmp(const void *a,const vo ...

  5. tomcat 产生heapdump文件配置

    连接地址:http://www.blogjava.net/zhanglongsr/articles/396607.html

  6. HTML系列(八):表格

    一.基本表格: 表格标记<table>,行标记<tr>,单元格标记<td> 基本语法: <table> <tr> <td>单元格 ...

  7. 关于使用由CA机构(EJBCA)颁发的证书实现SLLSocket双向认证服务端报null cert chain的解决方案

    在 SSLSocket实现服务端和客户端双向认证的例子 文章中最后提到使用keytool.exe的自签证书实现双向认证可以,但是使用ejbca生成证书实现SLL Socket的双向认证是服务端老是报错 ...

  8. matlab GUI之常用对话框(二)-- 进度条的使用方法

    常用对话框(二) 进度条   waitbar 调用格式: h = waitbar(x,'message')  waitbar(x,'message','CreateCancelBtn','button ...

  9. SQL中存储过程和自定义函数的区别(转载)

    存储过程:     存储过程可以使得对数据库的管理.以及显示关于数据库及其用户信息的工作容易得多.存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理.存储过程存储在 ...

  10. C - 字符识别?

    C - 字符识别? Time Limit:1000MS     Memory Limit:131072KB     64bit IO Format:%lld & %llu Submit Sta ...