ローカル変数
関数やメソッドの中で閉じた処理を行うことを目的として作られた変数のことをローカル変数という。関数やメソッドが形成したローカルスコープに属している。 関数の内側で作られた変数はローカル変数となる。
code:local_val1.py
def func():
x = 2 # xはローカル変数
return x
y = func()
print(y)
変数xは関数funcのローカル変数である。
関数やメソッドのローカルスコープは互いに独立しているため、
関数やメソッドは、他の関数やメソッドのローカル変数を利用することはできない。
複数のスコープに同じ名前の変数があったとしても、スコープ内では自身のスコープに属するローカル変数が見えており、他に干渉することはない。
code:local_val2.py
def func1():
x = 2 # (1)
print('func1:', x)
def func2():
print('func2:', x)
x = 1
func1()
func2()
print('Global:', x)
(1), (1') において同名の変数xが使われているが、関数func1, func2はそれぞれ異なるローカルスコープを形成するので、互いに干渉することはない。
code:local_val3.py
def func(a):
x = 2*a
return x
y = func(2) # 2を追加した
print(y)
仮引数aは関数funcのローカル変数となる。