PyCharm奇怪类型警告

PyCharm weird Type warning(PyCharm奇怪类型警告)

本文介绍了PyCharm奇怪类型警告的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

为什么以下代码:

v = [None for _ in range(3)]
v[-1] = 0                       <<<

告诉我这个?

意外类型: (int,int) 可能的类型: (int,无) (切片,可重复[无]) .

推荐答案

根据[Python 3.Docs]: Built-in Types - Lists(强调是我的):

列表是可变序列,通常用于存储同类项目的集合(其中精确的相似程度将因应用程序而异)。

intNoneType被认为不是同构的(通过PyCharm的代码检查),因此出现警告。解决此问题的最简单方法是使用ints:

填充列表
v = [0 for _ in range(3)]  # [0] * 3  # Shorter
v[-1] = 0

作为替代方案,您可以将元组用作异类项目容器(正如@JeyekSolomon指出的那样),但请记住元组是不可变的(一旦创建,就不能更改)。

这篇关于PyCharm奇怪类型警告的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:PyCharm奇怪类型警告

基础教程推荐