名前付きグループ
次のコードを実行したときの出力として、正しいものを1つ選べ。
import re
m = re.match(r"(?P<y>\d{4})-(?P<m>\d{2})", "2026-03-05")
print(m.groupdict())
- A
{'y': '2026', 'm': '03'} - B
{'y': 2026, 'm': 3} - C
('2026', '03') - D
{'y': '2026-03', 'm': '2026-03'}
正解と解説を見る
正解:A
(?P<名前>...) で名前付きグループを作り、m.group("名前") や groupdict() で取り出す。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `import re` | — |
| 2 | `m = re.match(r"(?P<y>\d{4})-(?P<m>\d{2})", "2…` | — |
| 3 | `print(m.groupdict())` | — |
| 結果 | 実際の出力 | {'y': '2026', 'm': '03'} |
- A
正しい。名前付きグループの値が、名前をキーにした辞書で得られる。
- B
誤り。値は文字列のまま。
- C
誤り。これは
groups()の結果。 - D
誤り。各グループに一致した部分が入る。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。