a+=b是否等价a=a+b?答:不一定等价;

a+=b是否等价a=a+b?答:不一定等价;杂谈分别用两种运算方式计算1+2=3和[1]+[2]=[1, 2]杂谈  自加运算+=,第一次实实在在的听懂,理解编程,那是在大学为了计算机二级上C语言培训课程的时候,老师对我们讲这个运算符时候所用的名词,同时她还讲到a+=b等价a=a+b是等价的运算。今天在Python中再次看到+=运算符,得到一个新的名词:就地加法。那么它两究竟等价与否?我们用几个实例来验证。这里用的是Python语法,其他编程语法都能实现同样的效果。分别用两种运算方式计算1+2=3和[
摘要由CSDN通过智能技术生成

a+=b是否等价a=a+b?答:不一定等价;

杂谈

  自加运算+=,第一次实实在在的听懂,理解编程,那是在大学为了计算机二级上C语言培训课程的时候,老师对我们讲这个运算符时候所用的名词,同时她还讲到a+=b等价a=a+b是等价的运算。今天在Python中再次看到+=运算符,得到一个新的名词:就地加法。那么它两究竟等价与否?我们用几个实例来验证。这里用的是Python语法,其他编程语法都能实现同样的效果。

分别用两种运算方式计算1+2=3和[1]+[2]=[1, 2]

  牛顿曾经说过“我之所以能成功,是因为我站在巨人的肩上。”,对待代码请记住:“我之所以能看懂,是因为我大脑是CPU做的。”在阅读代码时尽量跳出日常思维方式,不要受到日常脑回路限制,从而影响对代码的理解程度。要准确的分析a+=ba=a+b等价与否,就需要从内存的角度去分析两者对内存具体操作。
代码片段一:

a = 1
b = 2
print('片段一a的内存地址1:', id(a))
a+=b
print('片段一a的内存地址2:', id(a))

代码片段二:

a = 1
b = 2
print('片段二a的内存地址1:', id(a))
a=a+b
print('片段二a的内存地址2&
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值