带有“常规”异常消息的条件“try”语句

2024-05-19 19:47:47 发布

您现在位置:Python中文网/ 问答频道 /正文

如果条件为真,我想try加载文件。如果发生文件异常或条件为false,我希望执行第二(一行)代码。在

为了让鸟类参与进来,请考虑以下代码:

if try_to_fly:
    try:
        fly()
    except FlyError:
        walk("I'm walking instead of flying.")
else:
    walk("I'm walking stead of flying.")

# more lines below #

这就是我想做的。但是,它有两次walk("I'm walking stead of flying.")行,这是最好避免的。在

另外,在这一位下面还有更多的代码要做,因此我们不能在try语句中不考虑该代码。在

有没有一种更像Python的方法?在


Tags: 文件ofto代码falseif鸟类条件
3条回答

所有答案都是好的,但这可能会对您有所帮助:

try:
    if try_to_fly:
        fly()
    else:
        raise FlyError()
except FlyError:
    walk("I'm walking instead of flying.")

不使用任何附加变量:

try:
    if try_to_fly:
        fly()
    else:
        walk("I'm walking stead of flying.")
except FlyError:
    walk("I'm walking instead of flying.")

如果飞行成功,你可以设置一个变量。在

flying = False
if try_to_fly:
    try:
        fly()
        flying = True
    except FlyError:
        pass
if not flying:
    walk("I'm walking instead of flying.")

相关问题 更多 >