python中的 +=

本文深入探讨了Python中+=运算符在不同数据类型上的行为差异。对于数字和字符串,+=执行的是相加再赋值操作;而在列表中,其实质上调用了extend()方法,实现了列表的拼接,但不会改变原始列表的引用,从而不影响全局变量的值。通过具体代码示例,清晰地展示了这些特性。

在python中, 对于数字或字符串来说 += 是相加在赋值的操作,但是在列表中 ,本质上是调用了extend()方法,不会修改变量的引用 也就不会影响全局变量的值。

def demo(num):
  print(‘函数开始’)
  num += num
  print(num)
  print(‘函数结束’)

gl_num = 9
demo(gl_num)
print(gl_num)

这一小段代码,是数字的 += 运算,最后的结果也就是先赋值后想加得到的。

函数开始
18
函数结束
9

接下来看在这一段代码中加入列表

def demo(num,num_list):
  print(‘函数开始’)
  num += num
  num_list += num_list
  print(num)
  print(num_list)
  print(‘函数结束’)

gl_num = 9
gl_num_list = [1,2,3]
demo(gl_num,gl_num_list)
print(gl_num)
print(gl_num_list)
函数开始
18
[1,2,3,1,2,3]
函数结束
9
[1,2,3,1,2,3]

列表 += 运算之后的结果只是把两个列表拼接起来了,并没有像数字一样加起来。list += list 就等于list.extend(list)。要赋值的话,就用list = list + list

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值