10

これを行うと、構文エラーが発生します。

p = []
def proc(n):
    for i in range(0,n):
        C = i
        global p.append(C)
4

2 に答える 2

17

次のように変更するだけです。

def proc(n):
    for i in range(0,n):
        C = i
        p.append(C)

このglobalステートメントは関数の一番上でのみ使用でき、グローバル変数に代入する場合にのみ必要です。変更可能なオブジェクトを変更するだけの場合は、使用する必要はありません。

正しい使用例を次に示します。

n = 0
def set_n(i):
    global n
    n = i

上記の関数に global ステートメントがない場合、グローバル変数の値を変更する代わりに、関数内にローカル変数を作成するだけです。

于 2013-04-05T19:11:22.513 に答える