Python hashlib.digest() 方法的解码问题

1 投票
1 回答
2038 浏览
提问于 2025-04-15 20:22

大家好,StackOverflow的朋友们,

我在使用Google App Engine的时候,在一个模型类里(这个类是从db.Model继承的)写了一个叫keyToSha256()的方法:

class Car(db.Model):
    def keyToSha256(self):
        keyhash = hashlib.sha256(str(self.key())).digest()
        return keyhash

当我在Django模板中显示输出时,结果却是一堆乱码,比如:

�����_ɘ�!`�I�!�;�QeqN��Al�'2

我原本期待的结果应该是这样的:

9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08

我是不是漏掉了什么重要的东西?尽管我看了好几篇关于ASCII、Unicode、utf-8之类的指南,我觉得我还是没搞懂字符串编码和解码的奥秘。在浏览StackOverflow和用Google搜索了一些信息后,我决定在这里问问大家。有什么想法吗?谢谢!

1 个回答

5

改用 .hexdigest() 吧。

撰写回答