python小白 问关于a+=a 和a=a+a的区别
本文介绍了python小白 问关于a+=a 和a=a+a的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
第一段代码:
# -*- coding:gb2312 -*-
a = [100]
def test(num):
num += num #第一段代码
print(num)
test(a)
print(a)
执行结果:
第二段代码:
# -*- coding:gb2312 -*-
a = [100]
def test(num):
num = num + num #这个地方改了一下
print(num)
test(a)
print(a)
执行结果:
我的问题:
num += num不应该直接等价于mun = num+num 么
为什么算出来结果却是不一样的?这个是什么情况
解决方案
在python中,a=a+b是先创建一个新的对象并让变量a引用这个对象,a+=b是让a所引用的对象的值变成a+b的值
这篇关于python小白 问关于a+=a 和a=a+a的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文