Python 模擬試験

Python実践 模擬試験 第6回 問14・5章 タイプヒント(基本的な型注釈)

NamedTuple

次のコードを実行したときの出力として、正しいものを1つ選べ。

from typing import NamedTuple
class P(NamedTuple):
    x: int
    y: int = 0
print(P(1), P._fields)
  1. A

    P(x=1, y=0) ('x', 'y')

  2. B

    (1, 0) ('x', 'y')

  3. C

    P(x=1, y=0) ['x', 'y']

  4. D

    P(1) ()

正解と解説を見る

正解:A

typing.NamedTuple は、クラスの形式で型注釈つきの名前付きタプルを定義する。タプルなので、変更できず、軽量。

順実行する行実行後の変数
1`from typing import NamedTuple`—
2`class P(NamedTuple):`—
3└ `x: int`—
4└ `y: int = 0`y = 0
5└ `class P(NamedTuple):`—
6└ `x: int`—
7└ `class P(NamedTuple):`—
8└ `y: int = 0`—
9└ `class P(NamedTuple):`—
10`print(P(1), P._fields)`—
結果実際の出力P(x=1, y=0) ('x', 'y')

学習のポイント:変更が必要なら dataclass。

この問題を演習で解く →

問題一覧へ

このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。