如何使用try / except / else语法修复“意外的unindent”错误

问题描述 投票:0回答:1

在while语句中的else之后的任何内容都有缩进问题,我确定它是因为我格式不正确。写这个的正确方法是什么?

我试过移动陈述,但无法弄清楚

valid_data = False

while not valid_data:


    try:
        qty = int(input("How many would you like? (1-10)> "))
    except Exception as detail:
        print("Error: ", detail)
    else:
        try:
            if qty >= 1 and qty <= 10:
                valid_data = True
    finally:
        print("valid entry")

实际结果是将qty设置为1到10之间的用户输入而没有可能的无效输入,例如,如果用户输入字符串,则代码不会崩溃。对于此作业,我必须使用try / except语法。

python compiler-errors indentation except try-except
1个回答
0
投票

你搞砸了缩进:你的finally声明和它下面的print缺少额外的4个缩进空格。如果需要,您可以复制并粘贴固定版本:

while not valid_data:
    try:
        qty = int(input("How many would you like? (1-10)> "))
    except Exception as detail:
        print("Error: ", detail)
    else:
        try:
            if qty >= 1 and qty <= 10:
                valid_data = True
        finally:
            print("valid entry")
© www.soinside.com 2019 - 2024. All rights reserved.