【Python】dataclass でクラス変数を使用する

python

dataclass では定義したフィールドがそのまま dataclass のフィールドとして扱われます。

dataclass でもフィールドではない定数などを定義したい場合があるとおもいますのでクラス変数の定義方法について説明します。

クラス定数の設定

クラス定数の設定方法は通常のフィールドと同じように定義したあと hint に「ClassVar」を設定するだけです。

import dataclasses
from typing import ClassVar
@dataclasses.dataclass
class Data:
    name: str = "name"
    number: int = 1
    
    # クラス定数
    CONST_NUM: ClassVar[int] = 100

参考

python – Proper way to create class variable in Data Class – Stack Overflow

タイトルとURLをコピーしました