使用qazxsw poi(默认行为)定义数据类,然后实例化此类的对象时,是否有办法使此对象可以清除?
在Python 3.7之前,我使用了命名元组而不是数据类,我曾经使用frozen=False
查找重复项,但我不能再使用它了。出于其他原因,我不想在数据类上使用set()
。
有一个参数:
frozen=True
不过你可能应该使用@dataclass(unsafe_hash=True)
class Whatever:
...
。如果需要更新冻结的数据类实例上的属性,可以使用frozen=True
构造新对象:
dataclasses.replace
您还可以使用可变数据类实例和new_thing = dataclasses.replace(old_thing, var=new_val)
在需要可清洗时获取元组。但请注意 - dataclasses.astuple
有一堆奇怪的复制行为,因此您可以获得如下行为:
astuple