问题描述
我一直都知道Python增强操作总是执行就地操作。但似乎并非每种情况都如此。当我在integers
上应用增广运算时,它不在适当位置。
var1 = 1234
print(id(var1))
var1 = var1 + 4321
print(id(var1))
print()
var2 = 5678
print(id(var2))
var2 += 8765
print(id(var2))
输出:
140272195234704
140272195234928
140272195234736
140272195234896
但是当我将其应用于列表时,它就位了。
var1 = [1,2]
print(id(var1))
var1 = var1 + [3]
print(id(var1))
print()
var2 = [5,6]
print(id(var2))
var2 += [7]
print(id(var2))
输出:
140461597772992
140461597413184
140461597412480
140461597412480
我的问题是,何时将其用作就地操作,何时不进行? 为什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)