栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何指定一个属性必须是(例如)整数的列表,而不仅仅是列表?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何指定一个属性必须是(例如)整数的列表,而不仅仅是列表?

语法 确实有效。但是,PEP
484
添加的通用类型注释对象不在内置名称空间中,而是在

typing
模块中。

因此,您需要执行所

attrs
链接文档中的所有示例,PEP 484,PEP
483,PEP 526和
typing
文档都应执行以下操作:

from typing import List

另外,请注意,这只是一个注释。您仍然可以写作

c = C(x=[], y=[1.0])
,但不会得到
TypeError
。正如您链接的文档所说:

attrs
本身还没有任何可用于类型元数据的功能。但是,这对于编写自己的验证器或序列化框架很有用。

完全不清楚

attrs
如何处理此元数据。PEP 483 / PEP
484是设计的核心部分,类型注释只不过是运行时注释,不会影响值的类型或存储位置的合法性;只有静态类型检查器和其他与Python分开运行的工具才能使用它们。

特别是Mypy(参考标准静态类型检查器),某些linter和某些IDE应该将此标记为错误。如果他们还不支持

attrib
注释,那么几乎可以肯定他们正在努力(因为它们大致等效于3.7
/ PEP 557中的
dataclass
注释属性)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/625645.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号