Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.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 “类型”的表达式;列表[int]";无法分配给声明的类型";列表[int|None]”;_Python_Type Hinting - Fatal编程技术网

Python “类型”的表达式;列表[int]";无法分配给声明的类型";列表[int|None]”;

Python “类型”的表达式;列表[int]";无法分配给声明的类型";列表[int|None]”;,python,type-hinting,Python,Type Hinting,我想使用桩类型来保存卡片列表,但可能没有。我在列表中发现以下错误: 无法将“List[int]”类型的表达式分配给声明的类型 “列表[int | None]” 这是我的密码: Card: type = int Pile: type = List[Optional[Card]] deck: Pile = [i for i in range(1, 13)] * 12 + [0] * 18 对于列表理解或类型,我需要做哪些更改才能同时存储卡片而不存储?对于初学者来说,Card:type=int对我来

我想使用桩类型来保存卡片列表,但可能没有。我在列表中发现以下错误:

无法将“List[int]”类型的表达式分配给声明的类型 “列表[int | None]”

这是我的密码:

Card: type = int
Pile: type = List[Optional[Card]]
deck: Pile = [i for i in range(1, 13)] * 12 + [0] * 18

对于列表理解或类型,我需要做哪些更改才能同时存储卡片而不存储?

对于初学者来说,
Card:type=int
对我来说似乎是错误的。如果需要类型别名,不要对其进行类型注释,这没有意义。但是我如何复制它呢?问题在于不变的容器。看见这将适用于更灵活的容器类型<代码>桩=序列[可选[int]];甲板;Pile=[i代表范围(1,13)]**12+[0]*18您从何处获得此错误?验证类型批注不是内置功能。如果您正在使用,例如
mypy
,您应该明确地这样说。我对在python中使用类型注释比较陌生,所以我不完全确定哪些是好的做法,哪些是坏的做法。对于这个项目,我被告知要静态地键入所有内容,所以我想我还应该注释类型别名。我在VisualStudio代码中使用Python3.8.5和Pylance,并将typeCheckingMode设置为basic@flakes嗯,容器不太灵活(不可变),但类型允许更灵活的类型推断:)