python的md5加密不一样
巴扎黑
巴扎黑 2017-04-18 09:23:57
[Python讨论组]
import hashlib
#id.txt的内容是010010
with open("id.txt","r") as zd:
    b=zd.readline().strip('\n')
    
print b
m = hashlib.md5()   
m.update(b)
id_md5=m.hexdigest()
print id_md5

n = hashlib.md5() 
n.update('010010')
id_md5=n.hexdigest()
print id_md5

为什么加密之后这2个的值不一样。正确好像是后面那个。

巴扎黑
巴扎黑

全部回复(5)
迷茫

print b的时候,打印出来的内容是什么, 不可能不一样的啊。

迷茫

看起来可能是编码不一样,或者 Windows 下文本换行符是 \r\n 导致的

巴扎黑

我这边是一样的:

用的你的代码,Sublime3运行。

巴扎黑

read的时候用“rb”试试,以二进制格式读取内容,没有编码转换的问题。
或者读取之后,对读取到的字符串encode('ascii')一下,把它从unicode类型(我猜)转成str类型

ringa_lee

终端编写测试,结果是一样的呀。。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号