-3
これは機能します。Python関数のグローバル変数が自分のコードでは機能しません
a = [2,5,3,7,9,12]
def mean_list(x):
b = 0
for i in x:
b=b+i
c = b/len(x)
return c
print(mean_list(a))
しかし、私はグローバルとして自分のリストを宣言していますが、これは機能しません。どうして?
def mean_list(x):
global a
a = [2,5,3,7,9,12]
b = 0
for i in x:
b=b+i
c = b/len(x)
return c
print(mean_list(a))
*が定義されています。とにかく、あなたはなぜグローバル状態を使用していますか?なぜあなたは同じことをパラメータとして渡していますか? – jonrsharpe
「うまくいかない」とはどういう意味ですか?それはエラーを投げますか?その場合は、完全なトレースバックをエラーとともに追加します。関数を呼び出す前に 'a'はありませんので、関数に' a'を渡すことはできません(存在しないため)。 – syntonym
2番目の例では、 'a'を定義する関数を定義します。次に、パラメータとして 'a'を渡して関数を呼び出そうとします。問題は、関数がまだ呼び出されていないので、 'a'はまだ定義されていないということです!グローバルを呼び出すと、 –