使用Python的MD5模块比较两个文件是否一致
2011-05-12 13:28
971 查看
在Python中内置了md5的实现,就是md5模块,因此可以很简单的处理比较两个文件是否一致的问题。如以下代码片断:
import os,sys,md5
f1 = open('f:/1.txt','r')
f2 = open('f:/1.txt','r')
print md5.new(f1.read()).digest() == md5.new(f2.read()).digest()
以上处理在处理比较大的文件(比如几百M的文件)的时候会有内存问题。
python的md5模块使用非常简单,包括以下几个函数:
md5.new([arg])
返回一个md5对象,如果给出参数,则相当于调用了update(arg)
md5.updte(arg)
用string参数arg更新md5对象
md5.digest()
返回16字节的摘要,由传给update的string生成,摘要没有ascii字符
md5.hexdigest()
以16进制的形式返回摘要
代码示例:
保存代码为md.py
import os,sys,md5
f1 = open('f:/1.txt','r')
f2 = open('f:/1.txt','r')
print md5.new(f1.read()).digest() == md5.new(f2.read()).digest()
以上处理在处理比较大的文件(比如几百M的文件)的时候会有内存问题。
python的md5模块使用非常简单,包括以下几个函数:
md5.new([arg])
返回一个md5对象,如果给出参数,则相当于调用了update(arg)
md5.updte(arg)
用string参数arg更新md5对象
md5.digest()
返回16字节的摘要,由传给update的string生成,摘要没有ascii字符
md5.hexdigest()
以16进制的形式返回摘要
代码示例:
01.
#!/usr/bin/python
02.
import sys
03.
import md5
04.
05.
str=sys.argv[1]
06.
key = md5.
new
()
07.
key.update(str)
08.
print key.hexdigest()
09.
str=sys.argv[1]
保存代码为md.py
1.
[fengyj@fengyj python]$ chmod +x md.py
2.
[fengyj@fengyj python]$ ./md.py fengyajie
3.
74d040444b8f20d37aa9b2bd2997cd64
相关文章推荐
- java使用计算md5校验码方式比较两个文件是否相同
- Golang不使用MD5比较文件内容是否一致
- Golang不使用MD5比较文件内容是否一致
- java使用计算md5校验码方式比较两个文件是否相同
- 使用MD5比较两个文件是否相同
- linux比较两个文件是否一样(linux命令md5sum使用方法)
- linux 比较两个文件是否一致
- 使用python语言,比较两个字符串是否相同
- iOS 对比两个文件内容是否相同 MD5摘要 与 直接比较
- linux比较两个文件是否一样(linux命令md5sum使用方法)
- java比较两个文件夹下的文件是否一致
- python中比较两个文件是否相同
- 比较两个文件是否一致。
- asm--文件使用--比较两个文件是否内容相同
- 比较两个文件文件可以使用MD5比较工具
- linux之使用md5sum命令比较两个文件是否一样
- linux比较两个文件是否一样(linux命令md5sum使用方法)
- linux比较两个文件是否一样(linux命令md5sum使用方法)
- QT 比较两个文件是否一致(不限格式)
- 比较两个目录下文件是否一致(文件夹个数、文件个数、文件大小)