可変フィールド (リスト) を持つデータクラスがあります。私が達成したいのは、__init__ 呼び出しで明示的に None に設定されている場合でも、このフィールドが None にならないことです。通常のクラスでは、これを実装するのは簡単です。
class A:
def __init__(self, l: Optional[List[int]] = None):
if l is None:
l = []
self.l = l
dataclasses.field関数だけで、つまり __init__ メソッドを明示的に実装せずに同じ結果を得る方法はありますか (クラスに多くの属性がある場合は面倒です)。default_factory
指定された init 引数が None の場合、dataclasses.field を強制的に呼び出すことはできますか?