python的可变类型和不可变类型
时间: 2023-09-10 13:13:32 浏览: 85
Python 可变类型和不可变类型-基本概念
在 Python 中,可变类型和不可变类型是根据对象在内存中的值是否可以被修改来进行区分的。
不可变类型的值一旦被创建,就不能被改变。比如,整数、浮点数、字符串、元组等都属于不可变类型,因为它们的值一旦被创建,就不能被修改。
可变类型的值可以被修改。比如,列表、字典、集合等都属于可变类型,因为它们的值可以被修改。
需要注意的是,对不可变类型的操作会返回一个新的对象,而不是修改原来的对象。而对可变类型的修改会直接作用于原来的对象。
例如:
```python
a = 1 # 整数是不可变类型
b = a
print(id(a), id(b)) # 输出相同的内存地址
a += 1
print(id(a), id(b)) # 输出不同的内存地址
lst = [1, 2, 3] # 列表是可变类型
lst2 = lst
print(id(lst), id(lst2)) # 输出相同的内存地址
lst.append(4)
print(lst, lst2) # 输出 [1, 2, 3, 4] [1, 2, 3, 4]
```
在这个例子中,我们可以看到对于不可变类型的操作会返回一个新的对象,而对可变类型的修改会直接作用于原来的对象。
阅读全文