Python2与Python3中hashlib的sha1结果不一致,网上找了一大圈,都不正确。自己发博客,给有需要的人。真正解决了问题的,请点赞!
在python2中正确方法
import hashlib
token = “sw7v82sf9hvw”
lis = [token,‘1544002201’,‘129793960’]
lis.sort()
sha1 = hashlib.sha1()
map(sha1.update,lis)
hashcode = sha1.hexdigest()
print hashcode
在python3中正确方法
Python3正确的写法(微信公众号平台开发者使用)
list = [token, timestamp, nonce]
list.sort()
sha1 = hashlib.sha1()
sha1.update("".join(list).encode('utf-8')) #唯一区别的一句
hashcode = sha1.hexdigest()