【发布时间】:2019-04-01 15:44:58
【问题描述】:
我正在使用Python3 的新dataclass 功能,它允许指定类字段的类型。在这个例子中,field2 应该是 List[int] 类型,我将 List[str] 传递给它。此代码运行没有失败,我想知道如果将错误的类型传递给类,是否有(自动)方法使代码失败(即使用断言等)。
from dataclasses import *
import typing
@dataclass
class C:
field1: str
field2: typing.List[int]
if __name__ == '__main__':
x = C('a',['a','b'])
print(repr(x))
【问题讨论】:
-
我为此创建了一个小型 Python 库:github.com/tamuhey/dataclass_utils 这个库可以应用于包含另一个数据类(嵌套数据类)和嵌套容器类型(如
Tuple[List[Dict...)的数据类跨度>
标签: python python-3.x python-dataclasses