在python中你是会有点迷惑,因为python是针对对象来编程的,一切都是对象
下面我们来看个例子:
a=2
b=1+1
a is b
result:
true
在你的概念里a和b是不一样的对象怎么会为true呢?其实这个是python的一个特例,python认为这些小整型会经常被用到。python缓存这些整型是有范围的,而这个范围是可变的,不一样的版本会有所差别。
在看这样一个例子:
a=1000
b=500+500
a is b
result:
false
我的python是2.6 的没去测试他的具体范围,在2.3版本范围是(-1,100),但是并不推荐你的应用程序来应用这个特例