④ 関数

Python3エンジニア認定基礎試験125

問題

次の記述のうち、引数 y への指定が重複しており、エラー(TypeError)が発生する呼び出し方はどれですか。ただし関数は def function(x, y="foo", z="bar"): と定義されているものとする。

Afunction("spam", y="ham", z="eggs")
Bfunction("spam", "ham", y="foo", z="eggs")✓ 正解
Cfunction("spam", "ham", z="eggs")
Dfunction("spam", z="eggs")

正解

Bfunction("spam", "ham", y="foo", z="eggs")

解説

仮引数に位置引数として""ham""を渡した後にキーワード引数でy=""foo""を重複して指定することはできません。

分野解説:④ 関数

defキーワードによる関数の定義と呼び出しを学ぶ分野です。ローカル変数とグローバル変数のスコープ、global文の使い方、位置引数とキーワード引数の違いや併用時のルールが頻出です。引数のデフォルト値の評価タイミングや、可変オブジェクト(リストなど)をデフォルト値にしたときに値が引き継がれる有名な落とし穴も繰り返し問われます。誤った呼び出しで起きるTypeErrorやNameErrorなど、例外の種類とあわせて整理すると理解が深まります。実務でも必須となる基本を確実に固めましょう。出題数40問。

この分野の問題をすべて見る →

本番形式で問題を解いてみよう

クイズモードで挑戦 →
← 第124126問 →

Python3エンジニア認定基礎試験について

Python文法基礎を証明する認定試験

主催一般社団法人 Pythonエンジニア育成推進協会
出題形式選択問題40問(CBT方式で通年実施)
試験時間60分
受験料11,000円(税込)※学生5,500円
合格基準正答率70%
難易度★★☆☆☆
試験詳細を見る →
← 問題一覧へ戻る