皮查姆的警告是什么意思?

2024-05-16 20:00:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用Python编写一个Uno游戏,目前正在设置一个Uno平台。

_VALID_FACES = ['skip', 'draw2', 'reverse', 'wild', 'wild4'] + range(10)

我觉得这应该很好很好,没问题。然而,PyCharm坚持这个错误:

Expected type list[str] (matched generic type 'list[T]'), got 'list[int]' instead

现在我不完全确定这意味着什么。有什么想法吗?代码运行了,但是警告仍然在PyCharm中。


Tags: 游戏type错误range平台listpycharmreverse
2条回答

尽管在python中可以有字符串和int的列表,但最好保持列表元素的类型一致。在您的示例中,可以将所有元素转换为字符串:

_VALID_FACES = ['skip', 'draw2', 'reverse', 'wild', 'wild4'] + map(str, range(10))

PyCharm读取你的代码并试图猜测你在做什么,然后如果你做了一些与它认为你应该做的相反的事情,它会警告你。当你有一个很大的代码库,并且你不小心做了一些愚蠢的事情时,这是很有用的,但是当你知道自己在做什么时,这可能会很烦人。

在本例中,您得到了一个包含字符串的列表,并向其中添加了一个整数列表。PyCharm对此感到惊讶,以为你的列表中只有字符串,而不是字符串和整数的混合。

你应该可以安全地忽略它。

相关问题 更多 >