以下容器在Python中是可变的还是不可变的?
列表
元组
词典
答案 0 :(得分:4)
列表,词典:Mutable
元组:不变的
答案 1 :(得分:3)
tuple - immutable
list- mutable
dictionary - mutable
答案 2 :(得分:3)
Mutable 表示变量的值可以在存储或引用变量的同一内存块本身中更改。
不可变表示当您尝试更改变量的值时,它会创建一个新的内存块并将新值存储在那里。
不变 - 字符串,元组,数字等 可变 - 列表,词典,类等
示例:的
让我们考虑一个可变的List ......
A = [1,2,3] 假设列表'a'位于名为“A0XXX”的内存块中 现在,如果你想在列表中添加4,5 ...... B = [4,5] 追加他们两个 a + = b 现在a = [1,2,3,4,5] 因此,现在最终列表'a'也存储在相同的存储块“A0XXX”
中由于列表是可变的,它存储在同一个内存块中。
如果它是不可变的,最终列表'a'将存储在其他一些内存块“B0XXX”中 因此,可变对象可以更改并存储在同一个内存块中,当您尝试对不可变对象执行相同操作时,会创建一个新的内存块来存储更改的值。