2016-09-10 5 views
1

をインポートすると、エラー:Pythonの:私は以下のコードを使用して、MD5ライブラリ をインポートすると、私は問題を抱えているMD5

import md5 
filemd5 = md5.new(password.strip()).hexdigest() 
私もこのコードを試してみました

:また

from hashlib import md5 
filemd5 = md5.new(password.strip()).hexdigest() 

このコードを:

from md5 import md5 

しかし、いずれも機能していません。私は、コードを実行すると 、それは私に、このエラーを与える:

11.py", line 1, in <module> 
import md5 
ImportError: No module named 'md5' 

私は何をすべきでしょうか? 私は間違ったライブラリをインポートしていますか?

+0

https://docs.python.org/2/library/hashlib.html –

+0

'md5' _module_はPython 2.5以降で廃止され、Python 3では存在しません。' from hashlib import md5' _should_ work。どのようなエラーがあなたに与えましたか? –

+0

あなたはsudo apt-get install libssl-devを試すことができます –

答えて

1

md5はモジュールではなく、オブジェクトです。しかし、それは方法がありませんnew。どんなオブジェクトと同様、構築する必要があります。

使用次のように:あなたはまた、空のオブジェクトを作成し、後でそれを更新することができ

1cb251ec0d568de6a929b520c4aed8d1 

m=hashlib.md5() 
m.update("text") # python 2 
m.update(bytes("text","ascii")) # python 3 

注記:中

import hashlib 

m=hashlib.md5(bytes("text","ascii")) # python 3 
m=hashlib.md5("text") # python 2 
print(m.hexdigest()) 

結果(回以上!) Python 3では、というオブジェクトがエンコードされている必要があります。stringではなく、Py thon 3は、文字列とバイナリのデータを区別します。 MD5はバイナリや文字列に便利です。

+0

ありがとう! – Shahrad

関連する問題