Python 中可变和不可变的区别?
Python 定义了各种数据类型的对象。这些对象存储在内存中,对象的可变性取决于类型,例如列表和字典是可变的,这意味着我们可以在不改变其身份的情况下更改其内容。其他对象,如整数、浮点数、字符串和元组,没有规定更改其为索引分配的值。
列表是可变的:列表就像其他语言中声明的数组。列表不一定是同构的,这使得它成为Python中最强大的工具之一。列表是可变的,因此,即使在创建后也可以更改它们。
示例
#Write a python program to print list of a number? list=[1,2,3,4,5] print(list)
输出
[1,2,3,4,5]
列表是一个有序且可更改的集合。允许重复成员。
示例
list=[1,2,3,4,5] list[0] ='a' print(list)
输出
['a', 2, 3, 4, 5]
在运行程序时,将基于零的索引赋值为“1”可以赋值为“a”,这是可变的(可以修改)
元组是不可变的:元组是一个有序且不可更改的集合,不允许重复成员。在 Python 中,元组用圆括号 () 括起来,并用逗号分隔。圆括号是可选的,但是,使用它们是一个好习惯。
示例
#Write a python program to print tuple of a number? Tuple=(10,20,30) print(tuple)
输出
(10,20,30)
元组是有序且不可更改的(不能修改)。
示例
tuple=(10,20,30) tuple[0]=50 print(tuple)
输出
TypeError Traceback (most recent call last) in 1 my_yuple = (10, 20, 30) ----> 2 my_yuple[0] = 50 3 print(my_yuple) TypeError: 'tuple' object does not support item assignment
在将基于零的索引赋值为“50”时会抛出异常,因为它已分配了值“10”,这是不可变的(不能修改)。
广告