bisect
次のコードを実行したときの出力として、正しいものを1つ選べ。
import bisect
scores = [(100, "perl"), (200, "tcl"), (400, "lua"), (500, "python")]
bisect.insort(scores, (300, "ruby"))
print(scores[2])
- A
(400, 'lua') - B
(200, 'tcl') - C
(300, 'ruby') - D
(500, 'python')
正解と解説を見る
正解:C
bisect.insort() は、並べ替え済みのリストの順序を保ったまま要素を挿入する。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `import bisect` | — |
| 2 | `scores = [(100, "perl"), (200, "tcl"), (400, …` | scores = [(100, 'perl'), (200, 'tcl'), (400, 'lu… |
| 3 | `bisect.insort(scores, (300, "ruby"))` | scores = [(100, 'perl'), (200, 'tcl'), (300, 'ru… |
| 4 | `print(scores[2])` | scores = [(100, 'perl'), (200, 'tcl'), (300, 'ru… |
| 結果 | 実際の出力 | (300, 'ruby') |
- A
誤り。(300, "ruby") が並び順を保つ位置に挿入される。
- B
誤り。これは位置1の要素。
- C
正しい。bisect.insort() は、並べ替え済みのリストの順序を保つ位置に要素を挿入する。
- D
誤り。insort はリストの末尾に追加するわけではない。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。