python单变量赋值,字符串赋值的变与不变

本文探讨了Python中列表和字符串在赋值操作时的不同行为。列表赋值相当于地址传递,导致修改原变量会影响到新变量,而单个数字或字符串赋值会产生新对象,不会影响原有变量。由于Python字符串的不可变性,'+'操作会生成新的字符串对象,而非修改原有对象。
摘要由CSDN通过智能技术生成

之前写过一篇关于python里列表对象的’=’的一个陷阱
今天一个初学python的同学跟我讨论问题的时候,我们把这个问题扩展了一下。

我们知道,对于列表变量来说,赋值等于地址的传递,那么在原先的变量上做修改,同样会反应到被赋值的新变量上来,具体如下:

>>> a=[2]
>>> b=a
>>> a.append(3)
>>> b
[2, 3]

那么,对于单个变量来说,还是这样吗?事实上不是了,如下:

>>> a=2
>>> b=a
>>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值