0

関数内に「charge」という文字列を設定しましたが、本体で「charge」を呼び出すと、「charge」が定義されていないというトレースバック呼び出しが表示されます。関数の外部から文字列を呼び出すことができるかどうかを知りたいのですが、そうでない場合、充電内に保持されたデータを取得する別の方法はありますか?

def service (x, y, z):
    print ('How many animals are being provided for?')
    nodogs = input ('-----> ')

    if nodogs == '1':
        charge = 'x'

    elif nodogs == '2':
        charge = 'y'

    elif nodogs == '3':
        charge = 'z'

    x = int (x)
    y = int (y)
    z = int (z)

# the call for the string is later on but I think that part is irrelevant.
#If it is not, please say and I will post it.

私は初心者で、単純なコードを試しているだけです。高度な機能が必要な場合は、その機能について説明してください。

よろしくお願いします - TGSpike

4

1 に答える 1

0

ラインを入れるべき

return charge

関数の最後に、そして関数を呼び出すときに、

charge = service(x, y, z)

x y zしかし、あなたはそれらを使用しています)。これにより、 の値がメイン プログラムに返さchargeれ、変数 に入れられますcharge。複数の変数でこれを行いたい場合は、次のことができます

return x, y

x, y = service(x, y, z)

これは、タプルのアンパックと呼ばれます。

于 2013-06-10T17:19:21.037 に答える