首先,在python中存在一个就地修改和隐式创建新的变量的问题。
其中x+=1就属于就地修改,而x=x+1则需要创建隐式变量x,然后再将这个变量指向x+1这个地址,(注意这里的x执行+1操作后地址是会变得)
下面同过代码来看:
在这里插入代码片 >>> x=y=[] >>> x [] >>> x [] >>> x [] >>> x=y=[] >>> x+=[5] >>> x [5] >>> y [5] >>> x=x+[5,6] >>> x [5, 5, 6] >>> y [5] >>>
1234567891011121314151617181920实验证明方法:
所以这就会导致x+=1的运行效率要高于x=x+1,我们当然也是可以通过实验来证明的,比如就通过for循环,调用datetime函数来比较谁执行循环花的时间少。