見出し画像

【Python】脱辞書型 dataclassとenumで入れ子構造のデータ管理

はじめに

dataclassとenumを組み合わせて、効率的に入れ子構造のデータ管理を行うことができる。

dataclassはデータ管理を目的としたクラスを定義するための機能である。

enumは列挙型で識別子の集合を保持するための機能である。

これらの機能を組み合わせることにより、 「入れ子構造のデータ」を列挙型にて管理することができる。

例えば、入れ子構造のハイパーパラメータを管理したいときに、役立てることができる。

【実装】dataclassとenumでの実装例

dataclassとenumにて入れ子構造を定義した場合、 既に属性の定義が済んでいるため、エディタのコード補完により各要素にアクセスが容易になる。


【比較】 辞書型での入れ子構造のデータの管理との比較

同じことを辞書型で実現する場合、辞書のキー名を取得する必要性があり、手間が発生する。 また、dataclassの機能を活用することで、入れ子構造のデータのミスタイプを発生させることなく、管理することができる。


いいなと思ったら応援しよう!