Python中文
首页
教程
问答
标签
搜索
登录
注册
python中的md5输出与命令行不同(即使在二进制模式下)
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在编写一个脚本,它需要检查OSX和Windows上文件的md5和,作为一个健全性检查,我将结果与命令行<code>md5</code>工具的结果进行了比较,但得到的结果不同。这是密码</p> <pre><code>def MD5File(self, f, block_size=2**20): md5 = hashlib.md5() while True: data = f.read(block_size) if not data: break md5.update(data) return md5.hexdigest() with open(path, 'rb') as f: print MD5File(path) </code></pre> <p>我做了一件很明显的事情,即在二进制模式下打开文件,但结果仍然不同。我尝试过不同的缓冲数据的方法,包括一次性读取所有数据,python脚本始终返回相同的结果,但这与md5命令不同。在</p> <p>那么,是否还有其他明显的我做错了的事情,或者是运行<code>md5 filename</code>并没有达到预期的效果呢?当我直接读取文件的二进制文件时,不应该有任何换行问题。如果我运行<code>cat filename | md5</code>,那么我会再次得到不同的结果。在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>哦,这是一个用户错误。我重写了shell中的<code>md5</code>命令,只返回字符串的哈希值而不是文件。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何添加虚拟方法
4 回答
如何添加表示整数的擦边字符串?
6 回答
如何添加要在Bokeh中使用的新font.ttf文件?
6 回答
如何添加要显示的矩阵XY轴编号和XY轴
5 回答
如何添加计数?
3 回答
如何添加计数器函数?
5 回答
如何添加计数器列来计算数据帧中另一列中的特定值?
8 回答
如何添加计数器来跟踪while循环中的月份和年份?
9 回答
如何添加计数并删除countplot的顶部和右侧脊椎?
9 回答
如何添加计时器wx.应用程序更新窗口对象的主循环?
2 回答
如何添加评论到帖子?PostDetailVew,Django 2.1.5
5 回答
如何添加评论拉梅尔亚姆
6 回答
如何添加诸如矩阵Python/Pandas之类的数据帧?
4 回答
如何添加谷歌地点自动完成到Flask?
3 回答
如何添加超时、python discord bot
6 回答
如何添加超过1dp的检查
7 回答
如何添加距离方法
6 回答
如何添加跟随游戏的敌人精灵
6 回答
如何添加路径以便python可以找到程序?
9 回答
如何添加身份验证/安全性以使用happybase访问HBase?
2 回答