PyCharm 中的这个警告是什么意思?
What does this warning in PyCharm mean?
我正在 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.
PyCharm 阅读你的代码并尝试猜测你在做什么,然后如果你做了一些与它认为你应该做的相反的事情,它会警告你。当你有一个很大的代码库并且你不小心做了一些愚蠢的事情时这很有用,但是当你确切地知道你在做什么时这可能会很烦人。
在这种情况下,您有一个充满字符串的列表,并且要向其中添加一个整数列表。 PyCharm 对此感到惊讶,认为您的列表中只有字符串,而不是字符串和整数的混合。
您应该可以安全地忽略它。
虽然您可以在 python 中包含字符串和整数列表,但最好保持列表元素的类型一致。在您的示例中,您可以将所有元素转换为字符串:
_VALID_FACES = ['skip', 'draw2', 'reverse', 'wild', 'wild4'] + map(str, range(10))
我正在 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.
PyCharm 阅读你的代码并尝试猜测你在做什么,然后如果你做了一些与它认为你应该做的相反的事情,它会警告你。当你有一个很大的代码库并且你不小心做了一些愚蠢的事情时这很有用,但是当你确切地知道你在做什么时这可能会很烦人。
在这种情况下,您有一个充满字符串的列表,并且要向其中添加一个整数列表。 PyCharm 对此感到惊讶,认为您的列表中只有字符串,而不是字符串和整数的混合。
您应该可以安全地忽略它。
虽然您可以在 python 中包含字符串和整数列表,但最好保持列表元素的类型一致。在您的示例中,您可以将所有元素转换为字符串:
_VALID_FACES = ['skip', 'draw2', 'reverse', 'wild', 'wild4'] + map(str, range(10))