4

私は最近Pythonを学び始め、ここにいくつかのコードがあります。

...
workout = input("Work out if you won?")

if workout == "y":
    ballone()
elif workout == "n":
    print("Okay.")
    sys.exit("Not working out if you won")
else:
    sys.exit("Could not understand")

##Ball one
def ballone():
...

問題は「ballone」と呼ばれています。コマンドライン(ballone())から呼び出すと、定義され、完全に機能することがわかります。

何か案は?私はネットを精査しましたが、私を助けるものを見つけることができないようです。これ以上コードを投稿する必要がある場合は、私に知らせてください:)

4

1 に答える 1

11

関数定義を、それを使用する行の前に移動します。

def ballone():
    # ...

if workout == "y":
    ballone()
elif workout == "n":
    print("Okay.")
    sys.exit("Not working out if you won")
else:
    sys.exit("Could not understand")

関数は、値と同じように識別子(変数)に格納されworkoutます。最初に定義しない場合、Pythonはそれが後で定義されることをどのように知るのでしょうか?

于 2013-02-27T18:25:31.537 に答える