Python中对象可变的(mutable)和不可变的(immutable)介绍

Python中对象可变的(mutable)和不可变的(immutable)介绍

Python中所有的数据都可以被视为对象。在Python中,一切皆对象,包括整数、浮点数、字符串、列表、字典等内置数据类型,也包括自定义的类和对象。

每个对象都有自己的属性和方法,可以通过点操作符来访问和调用。例如,整数对象有属性如大小、位数等,还有方法如转换为字符串、求和等。字符串对象有属性如长度、字符的索引等,还有方法如拼接、大小写转换等。

Python中的对象分为可变的(mutable)和不可变的(immutable)

Python 中每个对象(object)都有各自的标识(identity)、类型(type)和值(value)。一个对象被创建后,它的标识就绝不会改变;你可以将其理解为该对象在内存中的地址(address )。“is” 运算符可以比较两个对象的标识号是否相同;id() 函数能返回一个代表其标识的整数。

有些对象的 值 可以改变。值可以改变的对象被称为 可变的(mutable);值不可以改变的对象就被称为 不可变的(immutable)。(一个不可变容器对象如果包含对可变对象的引用,当后者的值改变时,前者的值也会改变;但是该容器仍属于不可变对象,因为它所包含的对象集是不会改变的。因此,不可变并不严格等同于值不能改变,实际含义要更微妙。) 一个对象的可变性是由其类型决定的;例如,数字、字符串和元组是不可变的,而字典和列表是可变的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习&实践爱好者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值