所以我知道您可以使用try/except块来操作错误的输出,如下所示:
try:
print("ok")
print(str.translate)
print(str.foo)
except AttributeError:
print("oops, found an error")
print("done")
...这给出了以下输出:
ok
<method 'translate' of 'str' objects>
oops, found an error
done
现在,有没有办法用while循环来做以下事情while not AttributeError,像这样:
while not AttributeError:
print("ok")
print(str.translate)
print(str.foo)
print("done")
这将提供与上述相同的输出,只是没有oops, found an error? 这将减少对except: pass类型块的需求,如果您在except块中无事可做,那么类型块是必要的但有点无意义。
我尝试了while not AttributeError和while not AttributeError(),它们都完全跳过了while块中的任何内容。那么,有没有办法在 Python 中做到这一点?
编辑:这本身真的不是一个循环,但是 while 块会运行,如果遇到错误,则继续,如果到达结尾,则继续。
相关分类