元组 vs 列表

15.10 元组 vs 列表

元组:不可变、占内存略小、可哈希(能作字典键)、迭代略快。

列表:可变、方法多(append/pop/sort),适合动态数据。

选择原则:数据会不会变?会变用 list,不会变用 tuple。

  • 元组 → 坐标、RGB、日期分量、函数返回值、字典键
  • 列表 → 成绩列表、购物车、待办事项

对比示例

# ========================================
# 示例:元组 vs 列表
# ========================================
# 固定 RGB 颜色 — 用元组
red = (255, 0, 0)

# 动态购物清单 — 用列表
cart = ['苹果', '牛奶']
cart.append('面包')
print(red, cart)

# 元组转列表再改
nums = (1, 2, 3)
lst = list(nums)
lst.append(4)
print(tuple(lst))