関数とスコープ・ラムダ誤り発見
以下の記述で誤っているものはどれか
A.lambda式は複数の引数を受け取ることができ、lambda x, y: x + yのように記述できる
✓ この記述は正しい。lambda x, y: x + yは複数の引数を受け取るlambda式の正しい例である
B.グローバルスコープの変数を関数内で変更するにはglobal文を使用する必要がある
✓ この記述は正しい。global文を使用することでグローバルスコープの変数を関数内で変更できる
C.lambda式は複数の文を含むブロックを記述できるため、制御フローが必要な場合に使用する← 正解
✓ 正解です。この記述が誤りで、lambda式は単一の式のみを記述でき、複数の文やif文などの制御フローを含むブロックは記述できません。複雑な処理にはdef文で定義する関数を使用します
D.関数内で定義された変数はローカルスコープを持ち、関数外からはアクセスできない
✓ この記述は正しい。ローカルスコープの変数は関数内でのみ有効で、関数外からはアクセスできない
「関数とスコープ・ラムダ」の他の問題
以下のコードを実行したときの出力結果として正しいものはどれか。
def multiply(x, y=3):
r…以下のコードを実行したときの出力結果として正しいものはどれか。
square = lambda x: x ** 2
a…以下のコードを実行したときの出力結果として正しいものはどれか。
def calculate(a, b, c=2):
…以下のコードを実行したときの出力結果として正しいものはどれか。
numbers = [2, 3, 4, 5]
resu…以下のコードを実行したときの出力結果として正しいものはどれか。
def outer(x):
def inner…以下のコードを実行したときの出力結果として正しいものはどれか。
def func(a, b, *args):
…