简述Python可变类型和不可变类型 ?
参考答案:
Python中的数据类型可以分为可变类型和不可变类型。这两者的主要区别在于,可变类型的对象在创建后可以被修改,而不可变类型的对象在创建后则不能被修改。
不可变类型:
- 整数(Integers):如 100,-786,0 等。
- 浮点数(Floating point numbers):如 15.20,0.0,-21.9,32.3+e18 等。
- 复数(Complex Numbers):如 3.14j,45.j,9.322e-36j 等。
- 字符串(Strings):如 "Hello","ALICE" 等。
- 元组(Tuples):如 (1, 2, 3) 或 ("a", "b", "c")。一旦元组被创建,就不能修改其内容,所以它们是不可变的。
可变类型:
- 列表(Lists):如 [1, 2, 3],["a", "b", "c"] 等。列表的内容可以被修改,例如添加、删除或修改元素。
- 字典(Dictionaries):如 {"name": "John", "age": 30}。字典的内容(键和值)可以被修改。
- 集合(Sets):如 {1, 2, 3}。集合的内容(元素)可以被添加或删除。
请注意,虽然字符串在Python中是不可变的,但你可以对字符串进行各种操作(如连接、切片、替换等),这些操作会返回一个新的字符串,而不是修改原始字符串。
另外,虽然元组在Python中是不可变的,但元组中的元素如果是可变类型(如列表、字典等),那么这些元素的内容仍然可以被修改。只是元组本身不能被修改,即你不能添加、删除或替换元组中的元素。
这些可变和不可变类型的特性对于理解Python中的对象行为和数据结构非常重要。