Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 预期类型';列表[A]';(匹配的泛型类型';列表[_T]';),获得';列表[B]';而是在正确键入的列表上_Python_Python Typing - Fatal编程技术网

Python 预期类型';列表[A]';(匹配的泛型类型';列表[_T]';),获得';列表[B]';而是在正确键入的列表上

Python 预期类型';列表[A]';(匹配的泛型类型';列表[_T]';),获得';列表[B]';而是在正确键入的列表上,python,python-typing,Python,Python Typing,我得到的是预期类型'List[A]'(匹配的泛型类型'List[\T]'),而不是B上的'List[B]' 我如何获得正确的警告,因为很明显这些类型很好。在PyCharm中,您可以在获得警告的行上方键入“#noinspection PyTypeChecker”。这些类型不好List是不变的,这意味着List[X]不能替代List[Y],除非X和Y完全相等。类似地,A@Gulzar如果你想让它们成为列表,那么你就不能。这能回答你的问题吗? from typing import List cla

我得到的是
预期类型'List[A]'(匹配的泛型类型'List[\T]'),而不是
B
上的'List[B]'


我如何获得正确的警告,因为很明显这些类型很好。

在PyCharm中,您可以在获得警告的行上方键入“#noinspection PyTypeChecker”。

这些类型不好
List
是不变的,这意味着
List[X]
不能替代
List[Y]
,除非
X
Y
完全相等。类似地,
A@Gulzar如果你想让它们成为列表,那么你就不能。这能回答你的问题吗?
from typing import List


class Base(object):
    pass


class A(Base):
    pass


class B(Base):
    pass


a: List[A] = []
b: List[B] = []
c: List[Base] = a + b