python中不可变的对象类型有哪些 python中的可变对象和不变对象类型

主机教程 建站分享 2年前 (2022-12-16) 187次浏览

文章摘要:python中不可变的对象类型有哪些 python中的可变对象和不变对象类型

python中不可变的对象类型有:1、int数字类型;2、string字符串类型;3、float浮点型;4、t […]

python中不可变的对象类型有:1、int数字类型;2、string字符串类型;3、float浮点型;4、tuple元组。

具体示例分析:

1、int数字类型,尝试修改数字对象。

#新建数字对象1000

>>> id(1000)

53060472L

#新建数字对象1000

>>> y = 1000

>>> id(y)

53060328L

#尝试操作修改数字对象,实际上生成新的数字对象

>>> y = y + 1

>>> y

>>> id(y)

53058744L

2、对不可变对象str进行操作。

>>> a = 'abc'

>>> id(a)

52053576L

#引用新生成的对象

>>> b = a.replace('a','A')

>>> id(b)

47950704L

>>> id(a)

52053576L

>>> b

'Abc'

3、tuple元组相关示例。

>>> t = ('a', 'b', ['A', 'B'])

>>> t

('a', 'b', ['A', 'B'])

>>> hash(t)

Traceback (most recent call last):

File "

", line 1, in

hash(t)

TypeError: unhashable type: 'list'

>>> t[2][0] = 'X'

>>> t[2][1] = 'Y'

>>> t

('a', 'b', ['X', 'Y'])

注意:从表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。


声明:
若非注明,本站文章源于互联网收集整理和网友分享发布,如有侵权,请联系站长处理。
文章名称:python中不可变的对象类型有哪些 python中的可变对象和不变对象类型
文章链接:http://www.7966.org/post/10609.html
转载请注明出处

喜欢 (0)