Python数据结构的基础知识
在Python中,数据结构是用于存储和管理数据的方式。Python自带了一些基本的数据结构,每一种都有其应用场景和特点。以下是一些主要的Python数据结构及其基础知识:
列表(List):
- 使用方括号
[]
来定义。 - 可以包含多种数据类型(整数、字符串、甚至其他列表)。
- 支持可变性,即可以动态增加、删除或修改其中的元素。
- 支持切片操作,例如
my_list[1:3]
可以获取列表的子集。
示例:
my_list = [1, 'a', 3.14, [1, 2, 3]]
my_list.append(5)
- 使用方括号
元组(Tuple):
- 使用圆括号
()
来定义。 - 和列表类似,但不可变,即创建后不能修改。
- 常用于需要保护原始数据不被改变的场合。
示例:
my_tuple = (1, 'a', 3.14)
- 使用圆括号
集合(Set):
- 使用花括号
{}
来定义(或使用set()
构造函数)。 - 无序且不重复的数据元素集合。
- 支持数学集合操作,如并集、交集、差集。
示例:
my_set = {1, 2, 3, 4}
my_set.add(5)
- 使用花括号
字典(Dictionary):
- 使用花括号
{}
创建,存储键值对,类似JSON格式。 - 键必须是唯一且不可变的(常用字符串和数字)。
- 是无序的(Python 3.7之后,Dict保证按照插入顺序存储)。
示例:
my_dict = {'key1': 'value1', 'key2': 2}
my_dict['key3'] = 3.14
- 使用花括号
字符串(String):
- 字符串是Unicode字符的序列。
- 使用单引号
'
或双引号"
来定义。 - 不可变,但支持多种操作如拼接、分割、格式化等。
示例:
my_string = "Hello, World!"
upper_string = my_string.upper()
额外补充:Python中还有一些高级数据结构和模块,如堆、队列、双端队列、链表等,通常通过标准库(如 collections
、heapq
)提供,这些对于解决某些特定问题非常有用。理解和应用好这些基础数据结构是Python编程的关键之一。