2017-09-29 1 views
0

나는 파이썬에서 파일의 모든 단어와 그에 상응하는 암호화 (encrypt_password 함수 다음에 오는)로부터 사전을 만드는 funtion을 생성하려고합니다. 이 기능은 오류를 나타내지 않지만 암호 사전을 인쇄하지는 않습니다. 내가 어디로 잘못 가고 있니?내 기능이 인쇄되지 않는 이유는 무엇입니까?

이 입력은 이제 다음과 같습니다

import hashlib 

def encrypt_password(passwd): 
    """Encrypt a plaintext password (a string). It returns the result. 
    This encryption is one-way only, meaning it is not easy (impossible) to decrypt 
    the encrypted password to find out the original plaintext password again.""" 
    return hashlib.sha256(passwd.encode()).hexdigest() 

keys = open('words.txt').read().splitlines() 

values = [] 

for i in keys: 

    e = encrypt_password(i) 

    values.append(e) 

password = dict(zip(keys, values)) 

print(password) 

사전에 감사!

+0

당신은'print (password) '대신'print (Password)'가 필요합니다. – MedAli

+0

오타가 있습니까? 코드에는 암호가 없습니다. 너는 (암호) – ShreyasG

답변

0

변수와 암호가 다른 철자로되어 있습니다. 암호 란 무엇을 의미합니까?

+0

을 인쇄 할 필요가있다 이것은 코멘트이어야한다 –

+0

아아 나는 다만 그것을 보았고 나는 그것을 바꿨다. 그러나 그것은 여전히 ​​아무것도 인쇄하지 않는다. 암호는 파일의 단어 사전 및 암호화하려는 단어의 암호입니다. – NJR

+0

아마도 words.txt는 비어 있습니다. –

0

오타와 같아요. 암호 사전은 처음에 '암호'라고 불리며 다음은 '암호'입니다. 아마도 당신은 :

passwords = dict(zip(keys, values)) 

print(passwords) 
관련 문제