来自 hashlib returns NoneType 的 Sha 256 函数

Sha 256 function from hashlib returns NoneType

我有一个变量 c,它包含一个从 tkinters Entry 对象获得的字符串。 我想对这个字符串应用哈希函数,而不是将它传输到其他计算机。

我已经尝试使用 bytes 函数对我的字符串进行编码。

bytes(c)

encode函数

否则我尝试使用 "cryptography" 库并得到同样的错误。

我使用了 hashlib 库并创建了一个包含 #hashlib.sha256() 的变量 "digest"。

digest = hashlib.sha256()

然后我按照文档中的说明应用了更新功能。

c = digest.update(c)                      

c = c.digest()

我有一个错误

Exception in Tkinter callback

Traceback (most recent call last):

  File "C:\Python27\lib\lib-tk\Tkinter.py", line 1547, in __call__
    return self.func(*args)
  File "C:\Users\HTTPS\Desktop\registration_form.py", line 79, in register
    c = c.digest()
AttributeError: 'NoneType' object has no attribute 'digest'
c = digest.update(c)                      

...应该是:

digest.update(c)                      

在 Python return None 中因其副作用而被调用的操作,以便调用者清楚地知道它们正在改变调用它们的对象比 return 一个新值。