Python 3 エンジニア認定基礎試験 問題集

一般社団法人Pythonエンジニア育成推進協会 Python 3 エンジニア認定基礎試験 対策公式出題範囲 主教材『Pythonチュートリアル』第4版(Python 3.9 公式ドキュメント)準拠

Python 3 エンジニア認定基礎試験の日本語問題集。全180問に解説つき。

Python 3 エンジニア認定基礎試験 無料問題 6 / 10 ・ 分野5: 5章 データ構造

次のコードを実行したときの表示はどれか。 a = ['a', 'b', 'c', 'b', 'a', 'b'] print(a.index('b', 3))

  1. 3
  2. 5
  3. 0
  4. 1
正解と解説を見る

正解: A

正解の理由
list.index(x[, start[, end]]) は、x と等しい値を持つ最初の要素の位置をゼロから始まる添字で返す。任意の引数 start と end はスライス記法として解釈され、探索範囲を絞る。ここでは位置3から探すので、最初に見つかるのは位置3の 'b' である。返される添字は start からの相対位置ではなく、リスト全体の先頭からの位置なので、表示は 3 になる。

違う選択肢
「0」… 返される位置が start からの相対位置だと読んだ場合の結果(3 − 3 = 0)。チュートリアルは、返される添字は start 引数からの相対位置ではなく、リスト全体の先頭からの位置だと明記している。
「1」… 第2引数の start を無視して、リスト全体で最初に現れる 'b' の位置を答えた場合の結果。start と end はスライス記法として解釈され、探索は位置3から始まる。
「5」… index が最後に現れる位置を返すと読んだ場合の結果。index は探索範囲の中で x と等しい最初の要素の位置を返すので、位置3の 'b' が見つかった時点で答えが決まる。

つまずき方
該当する要素が無いとき、index は ValueError を送出する(文字列の find のように -1 は返さない)。出現回数を数えるのは count で、見つからなければ 0 を返す。チュートリアルの例 fruits.index('banana', 4) が 6 になるのも、全体の先頭から数えた位置だからである。

Python 3 エンジニア認定基礎試験の演習アプリ(無料10問・全問は解錠で)へ

問題集(note)を見る