Python nonlocal キーワード

関数内で関数を作成し、変数 x を非局所変数として使用します:

def myfunc1():
  x = "Bill"
  def myfunc2():
    nonlocal x
    x = "hello"
  myfunc2() 
  return x
print(myfunc1())

実行例

定義と用法

nonlocal キーワードは、変数が内部関数に属していない場合に、ネストされた関数内で使用されます。

キーワード nonlocal を使用して、変数がローカル変数でないことを宣言してください。

さらに例

上の例と同じですが、nonlocal キーワードを使用しません:

def myfunc1():
  x = "Bill"
  def myfunc2():
    x = "hello"
  myfunc2() 
  return x
print(myfunc1())

実行例

関連ページ

キーワード global グローバル変数を作成するために使用されます。