hashlib.md5() TypeError: Unicode-Objekte codiert werden muß, bevor hashing

Ich bin neu in Codierung und lief in ein problem, versuchen zu codieren eines Strings.

>>> import hashlib
>>> a = hashlib.md5()
>>> a.update('hi')
Traceback (most recent call last):
  File "<pyshell#22>", line 1, in <module>
    a.update('hi')
TypeError: Unicode-objects must be encoded before hashing
>>> a.digest()
b'\xd4\x1d\x8c\xd9\x8f\x00\xb2\x04\xe9\x80\t\x98\xec\xf8B~'

Ist (a) jetzt als verschlüsselt?

Zweite Frage: Wenn ich den gleichen code von oben in ein script bekomme ich diesen Fehler:

import hashlib
a = hashlib.md5()
a.update('hi')
a.digest()

Traceback (most recent call last):
Datei "C:/Users/User/Desktop/Logger/Encoding practice.py", line 3, in
ein.update('hi')
TypeError: Unicode-Objekte codiert werden muß, bevor hashing

Warum ist der code, der das arbeiten in der shell und nicht das Skript?
Ich arbeite mit Windows und Python 3.4

Dank.

InformationsquelleAutor Shahab | 2014-12-17

Schreibe einen Kommentar