3

Python で「except」ステートメントを使用する方法を理解するのに苦労しています。私は今、恐ろしいコーダーなので、事前にお詫び申し上げます。

実行しようとしている小さなコードは次のとおりです。

def mathWorks():
    print " Answer the following: 5 + x = 10"

    x = int(raw_input("Please type your answer: "))

    if x == 5:
        print "You are correct!"
    else:
        print "You are incorrect!"
        break
    except ValueError:
        print "That is not an integer!"

mathWorks()

私が達成しようとしていることは、かなり自明だと思います。残念ながら、このコードの「except」ステートメントの「無効な構文」が表示されます。

ここで何が間違っているのですか?

4

3 に答える 3

14

excepttryブロックの後に来る必要があります。これは、例外を処理する必要があるコードのセクションを示します。

try:
    x = int(raw_input("Please type your answer: "))
except ValueError:
    print "That is not an integer!"

「これを試して、失敗したらこれを実行してください」と読んでください。ブロック内でできる限り少ないtryことを実行することをお勧めします。これにより、意図しないエラーをキャッチしないようにすることができます (キャッチする例外のタイプを指定するのと同様に、既に行っています)。

この場合、sys.exit(1)ブロック内で呼び出すこともできexceptます。そうしないと、プログラムは続行されます (別のエラーで失敗します)。

于 2012-12-17T19:58:07.477 に答える
0

次のように使用されます。

try: # try code here
except: # except errors here
于 2012-12-17T19:58:29.910 に答える