1、a=a+2,表示一个新的对象,新的对象名字还是a,但是指向的内存地址已经变了
>>> a=2
>>> id(a)
140406287260016
>>> a=a+2
>>> a
4
>>> id(a)
140406287259968
所以对于tuple对象(不可变对象),也是可以这样操作的
>>> tuple1=(1,2)
>>> id(tuple1)
4521580448
>>> tuple1=tuple1+(3,)
>>> tuple1
(1, 2, 3)
>>> id(tuple1)
4521658880
2、a+=2对于有些对象的操作是表示原来的对象,对有些对象的操作是生成了一个新对象
不可变对象tuple1,操作完后,内存地址已经发生变化,生成一个新的对象
>>> tuple1=(1,2)