5

Python を使用してハッシュを比較しようとしていますが、この問題に悩まされています。

print ('-- '+hashesFile[h])
print ('-> ' +hashlib.md5(wordsFile[j]).hexdigest())   

-- 5d21e42d34fc1563bb2c73b3e1811357
-> 5d21e42d34fc1563bb2c73b3e1811357

しかし、この比較は決して真実ではありません:

if (hashesFile[h] == hashlib.md5(wordsFile[j]).hexdigest()):
 print ('ok')

私は解決策を探し、それらを比較する前に文字列をエンコードしようとしましたが、とにかくうまくいきません。

乾杯!!

4

1 に答える 1

3

両方を次のように印刷してみてください。

print '-- %r' % hashesFile[h]
print '-> %r' % hashlib.md5(wordsFile[j]).hexdigest())  

そうすれば、実際に何が入っているかがわかります。

これでうまくいくと思います:

if (hashesFile[h].strip() == hashlib.md5(wordsFile[j]).hexdigest()):
    print ('ok')
于 2012-09-30T09:21:18.740 に答える