PyCharm显示了这个警告,我不知道为什么
def record(self, *data: Sequence[Union[int, float, str]]) -> None:
for field, value in zip(self.fields, data):
if field.type in {1, 3}:
try:
value = int(value) # warning is here
except ValueError:
pass
# other logic...
它说value
来自解包zip
的value
与参数data
的类型相同,但它不是,也不应该是。如果它是Sequence
的元素,则意味着它将是Union[int, float, str]
类型
PyCharm没有意识到zip
被解包了吗
对于PEP 484,类型提示应用于
*data
的每个元素,而不是序列本身。你不需要Sequence
;这已经被*
所暗示相关问题 更多 >
编程相关推荐