私はこのコードを書きました:
sample_array = ones ([N, 3], dtype = float)
def get_training_set ():
r = rand (N, 2) * 2 - 1
sample_array[:,[0,1]] = r
return sample_array
サンプリング配列を常に割り当てないように、変更するためだけに外部で宣言しました。最後の座標は常に 1 です。
最初は、ステートメント「global sample_array」を関数に挿入する必要があると予想していました。これは、関数を変更するためであり、その結果、評価者はそれがグローバル変数であることを認識している必要があります。
しかし、驚いたことに、「グローバル」なしでうまく機能します。なぜそれが機能するのですか?この場合の評価の定義はどこ/何ですか?