阅读了这个问题后,我能理解为什么会输出这个警告,但我有一个特定的情况,循环变量不能未定义...
for i in range(0, 2):
print i
print i
我对上述进行PyLint检查,得到以下结果:
W: 4,6: Using possibly undefined loop variable 'i'
< p > PyLint
难道没有足够聪明的能力来注意到这种情况下内置的range()
函数将总是产生一个已填充的列表,因此i
将始终为最后一个print
语句设置吗?如果它是一个未定义的函数,我可以理解,因为 PyLint不可能知道函数的作用... 但在这种情况下,这是一个众所周知的函数,这种用法肯定很常见吧?
如果是这样的话,是抑制警告更好还是在循环之前定义i
(这似乎是浪费的)?
range
,会发生什么呢? - tobias_k