我正在尝试使用一堆MD5哈希密码解析txt文件(用于分配) 我的代码是
with open('weak.txt') as f:
i = 0
for line in f:
weak.append(eval(line.strip()))
if 'str' in line:
break
但我来了
SyntaxError: unexpected EOF, File "<string>", line 1
1660fe5c81c4ce64a2611494c439e1ba
^
我尝试将原始输入添加到我的代码中,但它只是挂起。任何想法?
答案 0 :(得分:2)
您不应该致电eval
。
with open('weak.txt') as f:
i = 0
for line in f:
weak.append(line.strip())
if 'str' in line:
break
eval
函数尝试将字符串解释为一系列python语句。你不希望这样。通常没有充分的理由使用eval
。您希望md5sum为字符串。当您使用语句f
迭代for line in f
时,您要求文件对象为文件中的每一行返回字符串对象。换句话说,line
已经包含了你想要的东西,你不需要让python解释器执行它。