Python:try-except,不';不要在应该的时候打电话试试

Python:try-except,不';不要在应该的时候打电话试试,python,zipfile,try-except,Python,Zipfile,Try Except,我真的不知道为什么我的“尝试除外”即使在应该的时候也不运行“尝试”。 它只打印来自“except”的消息,并将正确的密码作为“result”。 我已经尝试了一些方法,但似乎没有任何效果 (我不想用这个程序做违法的事情。我只对itertools和zipfile模块感兴趣。) 代码: 导入itertools、sys、zipfile 字符=输入(“字符:+”) 最大长度=输入(“最大长度:+”) zip_name=输入(“zip名称:+”) 最大长度=整数(最大长度) 如果字符在(“字母”、“字母”)

我真的不知道为什么我的“尝试除外”即使在应该的时候也不运行“尝试”。 它只打印来自“except”的消息,并将正确的密码作为“result”。 我已经尝试了一些方法,但似乎没有任何效果

(我不想用这个程序做违法的事情。我只对itertools和zipfile模块感兴趣。)

代码:

导入itertools、sys、zipfile
字符=输入(“字符:+”)
最大长度=输入(“最大长度:+”)
zip_name=输入(“zip名称:+”)
最大长度=整数(最大长度)
如果字符在(“字母”、“字母”):
chars=“abcdefghijklmnopqrstuvxyz”
如果输入字符(“数字”、“数字”):
chars=“0123456789”
打印()
输入(“按enter键开始…”)
打印()
长度=(最大长度+1)-最大长度
zip_file=zipfile.zipfile(zip_名称)

虽然长度嗯,但这一行似乎有一个例外:

zip_file.extractall(pwd = result)
然后,它会转到except块


解决方法:删除try/except,然后查看输出中将显示什么。

这是一个清楚的示例,说明了为什么不应使用裸except。try块的第一行可能导致异常,但您正在吞咽它,因此您永远不会知道它是什么。不要这样做。您确定要
输入
而不是
原始输入
input
对Python表达式求值,但我相信您是在试图从用户那里获取字符串。您是在试图破解压缩文件的密码吗?Read-从用户和开发人员的角度来看,这是一种非常没有帮助的错误管理方法。@dpwilson:从使用print()作为函数可以看出,这是Python 3代码,其中原始输入()重命名为输入(),旧输入()不再作为内置项存在。
traceback.print\u exc()
可以添加到异常中。
zip_file.extractall(pwd = result)