【发布时间】:2021-07-08 18:38:26
【问题描述】:
我正在使用 marshmallow 数据类来键入检查可用作字典的文件。 在文件中有一些特殊的数字三元组,它们指定(典型值、最小值、最大值)值。 我想验证这些值并将其存储在特殊的类中,子类化 python 的元组。 但是,我总是收到一个 ValidationError:
这是一个 MWE
from typing import Any, Tuple, List
from marshmallow_dataclass import dataclass
data = {'key1': (1, 2, 3),
'key2': (2, 3, 4)}
@dataclass
class Triplet(Tuple[int, int, int]):
pass
def someCalculation(self):
pass
@dataclass
class Triplet2(List):
pass
def someCalculation(self):
pass
@dataclass
class MySchema:
key1: Tuple[int, int, int]
key2: Triplet
schema = MySchema.Schema().load(data)
print(schema)
我已经尝试过继承 List 和 Tuple,但我的尝试都没有按预期工作。 有没有办法使用我的 Triplet 类?
【问题讨论】:
标签: python python-typing python-dataclasses