KeyError: ' ' Python, String Mutation Generator



嗨,我创建了一些打印密码突变的代码。但是,我无法让它从包含许多常见密码的文本文件中读取多个密码。这是我的代码:

from itertools import product
for password in commonpasswords:
    allPossible = list(mapping[letter] for letter in password)

不确定为什么我会收到错误,我基本上希望它一次读取文本文件中的每个条目 1 行,执行尽可能多的突变,然后移动到下一个条目。该文件仅包含小写单词,每个条目都在单独的行上。谢谢。

编辑:我在

创建总计时也遇到问题,我在循环末尾添加了此代码,删除了两个打印功能:

total = total + len(allPossible)
print(total)

然而,这似乎不起作用,突变的总数就是我想要的数字。谢谢。

每当你从文件中读取任何一行时,它会自动拾取吃完结尾的n字符。因此,您必须先剥离n。添加一行,password.strip('n')在循环的开头,例如

for password in commonpasswords:
    password = password.strip('n')

(或者因为它总是你可以做的最后一个词password[:-1]就像allPossible = list(product(*([letter] + mapping[letter] for letter in password[:-1)))一样)

for password in commonpasswords:
    password = password.rstrip('n')

最新更新