Python 中常用的内置数据结构

1. 列表 (List)

列表是一种有序、可变的集合,可以存储任意类型的元素。使用方括号 [] 定义。

python 复制代码
fruits = ["apple", "banana", "cherry"]
fruits.append("orange")  # 添加元素
print(fruits)  # 输出: ['apple', 'banana', 'cherry', 'orange']

2. 元组 (Tuple)

元组是一种有序、不可变的集合,可以存储任意类型的元素。使用小括号 () 定义。

python 复制代码
coordinates = (10, 20)
print(coordinates[0])  # 输出: 10

# 尽管元组本身是不可变的,但元组中的可变元素(如列表)仍然可以改变
nested_tuple = (1, [2, 3])
nested_tuple[1][0] = 4
print(nested_tuple)  # 输出: (1, [4, 3])

如果元组中只有一个元素那么需要在元素后面添加一个逗号。

python 复制代码
single_element_tuple = (42,)
print(type(single_element_tuple))  # 输出: <class 'tuple'>
print(single_element_tuple)        # 输出: (42,)

3. 字典 (Dictionary)

字典是一种无序的键值对集合,键必须是唯一的,值可以是任意类型。使用花括号 {} 定义。

python 复制代码
person = {"name": "Alice", "age": 30}
person["city"] = "New York"  # 添加键值对
print(person)  # 输出: {'name': 'Alice', 'age': 30, 'city': 'New York'}

4. 集合 (Set)

集合是一种无序、不重复元素的集合。使用花括号 {}set() 函数定义。

python 复制代码
unique_numbers = {1, 2, 3, 4}
unique_numbers.add(5)  # 添加元素
print(unique_numbers)  # 输出: {1, 2, 3, 4, 5}

5. 字符串 (String)

字符串是字符的有序集合,用单引号 ' 或双引号 " 定义。字符串是不可变的。

python 复制代码
message = "Hello, World!"
print(message.upper())  # 输出: 'HELLO, WORLD!'

6. 队列 (Queue)

队列是一种先进先出 (FIFO) 的数据结构。可以使用 collections.deque 模块来实现队列。

python 复制代码
from collections import deque

queue = deque(["Alice", "Bob", "Charlie"])
queue.append("Dave")  # 添加元素到队列末尾
print(queue.popleft())  # 输出: 'Alice' 并移除

7. 堆栈 (Stack)

堆栈是一种后进先出 (LIFO) 的数据结构。列表可以用作堆栈。

python 复制代码
stack = [1, 2, 3]
stack.append(4)  # 添加元素到堆栈顶部
print(stack.pop())  # 输出: 4 并移除

8. 队列 (Priority Queue)

优先队列可以使用 heapq 模块实现,它允许以元素的优先级顺序来访问元素。

python 复制代码
import heapq

heap = [1, 3, 5, 7]
heapq.heappush(heap, 2)  # 添加元素并保持堆的属性
print(heapq.heappop(heap))  # 输出: 1 并移除

9. 有序字典 (OrderedDict)

OrderedDict 是一种记住插入顺序的字典,使用 collections 模块。

python 复制代码
from collections import OrderedDict

ordered_dict = OrderedDict()
ordered_dict["one"] = 1
ordered_dict["two"] = 2
print(ordered_dict)  # 输出: OrderedDict([('one', 1), ('two', 2)])

10. 默认字典 (defaultdict)

defaultdict 是一种带有默认值的字典,使用 collections 模块。

python 复制代码
from collections import defaultdict

default_dict = defaultdict(int)
default_dict["count"] += 1
print(default_dict)  # 输出: defaultdict(<class 'int'>, {'count': 1})

总结

这些内置数据结构在处理不同类型的数据时非常有用。选择合适的数据结构可以提高代码的效率和可读性。理解和善用这些数据结构是高效编程的重要一环。

相关推荐
满怀冰雪23 分钟前
24-PaddleClas 模型评估、导出与推理部署入门
大数据·人工智能·python·深度学习·paddle
Chester_19995 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
DeepVisionary6 小时前
谷歌 Gemini Omni 1.1 Flash 正式发布:4K 视频、40 秒场景延伸,视频生成进入按 token 计费时代
python·自动化
阡之尘埃6 小时前
Python数据分析案例85——大模型微调全流程(SFT的LoRA微调)
人工智能·python·深度学习·语言模型·llm·微调·千问
海兰7 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(三)
javascript·python·金融
Julien20047 小时前
控制 SELinux 文件上下文
linux·运维·服务器
cvcode_study7 小时前
Ollama+ComfyUI 多模态
大数据·人工智能·python
sulikey7 小时前
Linux Core Dump 完全指南:从原理到实战的崩溃调试手册。什么是core dump?程序报错core dumped怎么办?
linux·服务器·操作系统·调试·coredump
Lifangyun_WD7 小时前
第一次租 GPU 服务器怎么开始?镜像、SSH、数据存储和停机前要做什么
服务器·云计算·gpu算力·gpu算力租赁
DevLoom_8 小时前
SD卡插电脑提示:驱动器中的磁盘未被格式化?恢复数据正确处理步骤
运维·服务器·电脑