関数とスコープ・ラムダ応用問題

以下のコードを実行したときの出力を選択してください。 ```python x = 5 def outer(): x = 10 inner = lambda: x + 5 return inner() print(outer()) ```

A.10
✗ ラムダ関数はouter()内で定義されており、ローカルスコープのx=10が参照されます
B.15← 正解
✓ 正解です。ラムダ関数はouter()内で定義されたため、クロージャによってローカル変数x=10を参照し、10+5=15を返します
C.20
✗ グローバルスコープのx=5ではなく、ローカルスコープのx=10が参照されます
D.25
✗ ローカルスコープのxは10であり、5ではないため、この計算結果は誤りです

Python 3 エンジニア認定基礎試験 の問題一覧