Python元組:不可變但靈活的數據容器
元組(tuple)是Python中一種不可變(immutable)但功能靈活的有序集合數據類型,具有以下核心特性:
一、基本特性
不可變性?:創建后不能修改元素(增刪改操作均不允許)
有序存儲?:元素按插入順序保存,可通過索引訪問
異構數據?:可存儲不同類型的數據(整數、字符串、對象等混合)
內存優化?:比列表(list)占用更少內存空間
二、典型應用場景
數據保護?:確保關鍵數據不被意外修改
字典鍵值?:可作為字典的鍵(列表不能)
函數多返回值?:打包返回多個值
性能敏感場景?:替代列表提升執行效率
三、高級用法示例
python
# 1. 解包操作
coordinates = (118.78, 32.04)
longitude, latitude = coordinates ?# 自動解包
# 2. 命名元組
from collections import namedtuple
Product = namedtuple('Product', ['name', 'price', 'stock'])
item = Product('iPhone15', 6999, 100)
print(item.name) ?# 通過字段名訪問
# 3. 元組推導式
squares = tuple(x**2 for x in range(10))
# 4. 作為函數參數
def connect(*args):
print(f"連接參數: {args}")
connect('127.0.0.1', 3306, 'root', 'password')
四、與列表的性能對比
操作類型?? ?元組?? ?列表
創建速度?? ?快約5%?? ?稍慢
遍歷速度?? ?基本相同?? ?基本相同
內存占用?? ?較少?? ?較多
修改操作?? ?不支持?? ?支持
五、最佳實踐建議
優先使用元組存儲不應修改的數據集合
大量只讀數據使用元組可提升程序性能
需要哈希(hash)處理的數據必須使用元組
當需要頻繁修改數據時仍應選擇列表