如何解决为什么此代码会生成类型注释警告?
我有带有这些类型注释的 python 函数
def func_1() -> Optional[Sequence[str,List[str],str]]:
# do stuff
def func_2(a: str,b: List[str],c: str) -> None:
# do other stuff
为什么以下代码在我调用 func_2 的行中给我警告“预期类型列表[str,Any]'得到了'str'”?
result = func_1()
func_2(result[0],result[1],result[2])
这是否意味着我的类型检查器有问题,或者我的代码有问题?
解决方法
Sequence
不打算与这样的多种类型一起使用。 Sequence
和 List
并不意味着具有结构(意思是,元素 1 始终为 int
,元素 2 始终为 str
,并且长度始终为 2)。
您应该改用 Tuple
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。