需要注意的一个有趣的事情可能有助于优化您的应用程序,实际上,原始变量实际上也在底层被引用。让我们看一下数字;对于-5到256之间的所有整数,Python始终会重复使用同一对象:
>>> import sys >>> sys.getrefcount(1) 797 >>> a = 1 >>> b = 1 >>> sys.getrefcount(1) 799
注意,引用计数的增加,这意味着a和b引用相同的底层对象时它们指的是1原始的。但是,对于更大的数字,Python实际上不会重用基础对象:
>>> a = 999999999 >>> sys.getrefcount(999999999) 3 >>> b = 999999999 >>> sys.getrefcount(999999999) 3
由于引用计数为999999999它分配到时不改变a和b我们可以推断,他们指的是两个不同的潜在对象,即使他们都分配相同的原始。