我遇到了一个我无法解决的问题。很简单,我有两个文本文件,一个是hashes,它的格式是
uncrackedHash:crackedHash
第二个文件email_list的格式为:
^{pr2}$现在我要做的是,打印出电子邮件和破解哈希,如果未破解的哈希是相同的。在
我一直得到的错误是:
email, uncracked = i.split(':')
ValueError: too many values to unpack
然而len(i)=2
而且,我知道我的打开文件是非常规的和糟糕的做法,它应该不会影响代码。这正是我2年前学习Python的方式,一旦我学会了正确的方法,我就会很快融入到这个惯例中去。在
hashes_found = open('hashes_found.txt', 'r')
email_list = open('email_list.txt', 'r')
for i in email_list:
i = i.strip()
email, uncracked = i.split(':')
for j in hashes_found:
j = j.strip()
try:
uncracked_2, cracked = j.split(':')
except Exception,e:
print e
continue
if uncracked == uncracked_2:
print email, ':', cracked
else:
continue
您可以使用aux变量:
你说
len(i)
是2,但这与len(i.split(':'))
不同。。。在我的猜测是:您有空行,并且使用DOS格式(所以行是
\r\n
)。在要跳过空行:
也有可能该行没有
^{pr2}$:
,您可以跳过以下内容:相关问题 更多 >
编程相关推荐