为什么蟒蛇不会引发NameError
问题描述:
考虑这个简单的例子:为什么蟒蛇不会引发NameError
i = 10
if i != id:
print i
由于id
没有在这里定义,所以我是假设得到NameError: name 'id' is not defined
但它不会提出任何。
但在这种情况下:
id = 10
if i != id:
print i
它实际上提出了一个NameError
例外i
。所以任何人都可以向我解释这种行为?
'id'是一个[内建函数](http://docs.python.org/2/library/functions.html#id)。 –