我是数据类新手,正在尝试用一种简单的方法将数据类转换为字典,然后从JSON文件保存和加载。在实现我的应用程序所需的基础结构之前,我将在一个小型数据类上测试它,其中包含我将使用的变量,如下所示:
from dataclasses import dataclass, asdict
@dataclass
class TestClass:
def __init__(self, floatA:[float], intA:[int], floatB:[float]):
self.var1 = floatA
self.var2 = intA
self.var3 = floatB
def ConvertToDict(self):
return asdict(self)
test = TestClass([0.2,0.1,0.5], [1,2,3], [0.9,0.7,0.6])
print(asdict(test))
print(test.ConvertToDict())
这两个print语句都是空字典“{}”,我似乎不明白为什么
通过重写
__init__
方法,您实际上是在使dataclass
装饰器成为禁止操作的对象。我认为您需要:作为输出产生:
详情见the documentation
相关问题 更多 >
编程相关推荐