【Python】字典(dict)、列表(list)、元组(tuple)
2026/6/12 17:14:20 网站建设 项目流程

在 Python 中,{}[]()是三种核心的字面量语法,分别对应字典(dict)列表(list)元组(tuple)三种内置对象(特殊场景下{}也可表示集合 set),以下是详细说明:

一、[]:列表(list)—— 可变有序序列

核心特性

  • 可变(Mutable):可动态增删改元素;
  • 有序(Ordered):元素按插入顺序排列,支持索引/切片;
  • 异构:可存储不同类型的元素(数字、字符串、对象等)。

基础用法

# 空列表empty_list=[]# 非空列表fruits=["apple","banana",100,True]# 可变特性(修改元素)fruits[1]="orange"# 结果:["apple", "orange", 100, True]# 新增元素fruits.append("grape")# 删除元素delfruits[2]

二、():元组(tuple)—— 不可变有序序列

核心特性

  • 不可变(Immutable):一旦创建,元素不能增删改(元素本身若为可变对象,其内部可修改);
  • 有序(Ordered):支持索引/切片,性能略优于列表;
  • 异构:同样支持多类型元素;
  • 语法细节:单元素元组需加逗号((1,)),空元组直接()

基础用法

# 空元组empty_tuple=()# 单元素元组(必须加逗号)single_tuple=(10,)# 多元素元组(括号可省略,靠逗号识别)colors=("red","green","blue")nums=1,2,3# 等价于 (1,2,3)# 不可变特性(报错)# colors[0] = "black" # TypeError: 'tuple' object does not support item assignment# 元素为可变对象时,内部可修改t=([1,2],3)t[0].append(4)# 结果:([1,2,4], 3)

三、{}:字典(dict)/ 集合(set)—— 两种场景

场景1:字典(dict)—— 可变键值对映射(默认)

核心特性

  • 可变(Mutable):可增删改键值对;
  • 无序(Python 3.7+ 按插入顺序保存);
  • 键(key)唯一且不可变(必须是哈希类型:字符串、数字、元组等),值(value)可任意;
  • 空字典直接用{}表示。

基础用法

# 空字典empty_dict={}# 非空字典person={"name":"Alice","age":25,"is_student":False}# 修改值person["age"]=26# 新增键值对person["city"]="Beijing"# 删除键值对delperson["is_student"]
场景2:集合(set)—— 可变无序不重复集合

核心特性

  • 可变(Mutable):可增删元素;
  • 无序(Unordered):不支持索引;
  • 元素唯一(自动去重)且不可变(哈希类型);
  • 空集合必须用set()(而非{}{}优先表示空字典)。

基础用法

# 空集合(必须用 set())empty_set=set()# 非空集合nums={1,2,3,3,4}# 自动去重:{1,2,3,4}# 新增元素nums.add(5)# 删除元素nums.remove(2)

核心总结表

符号主要对象核心特性空值写法
[]列表可变、有序、异构[]
()元组不可变、有序、异构()
{}字典可变、键值对、键唯一不可变{}
{}集合可变、无序、元素唯一不可变set()(非{}

关键注意点

  1. {}优先表示空字典,空集合必须用set()
  2. 元组的“不可变”是指元素引用不可变,若元素是列表/字典等可变对象,其内部可修改;
  3. 集合/字典的键要求是“哈希类型”(不可变类型),列表、字典等不可哈希的类型不能作为集合元素/字典键。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询