字典(dict)是 Python 中最常用、最高效的数据结构,核心就是「键值对」(key: value),就像我们用的字典——键(key)是查找的字,值(value)是字的解释。
今天用最简单的例子,一次性讲透字典添加元素、修改元素的所有用法,新手也能直接复制用!
一、先认识一个基础字典
先定义一个简单的用户信息字典,方便后面举例:
# 定义一个基础字典
user = {
"name": "小明",
"age": 20,
"gender": "男"
}
print(user)
# 输出:{'name': '小明', 'age': 20, 'gender': '男'}
二、字典添加元素(3种常用方法)
1. 最常用:直接赋值(最简单)
语法:字典名[新键] = 新值如果键不存在,就是添加新元素; 如果键已存在,就是修改元素。
user = {"name": "小明", "age": 20}
# 添加新键值对:城市
user["city"] = "北京"
# 添加新键值对:职业
user["job"] = "学生"
print(user)
# 输出:{'name': '小明', 'age': 20, 'city': '北京', 'job': '学生'}
✅ 适用场景:日常开发90%的场景都用这个,简单直观!
2. 批量添加:update() 方法
一次添加多个键值对,适合批量更新字典。语法:字典名.update({键1:值1, 键2:值2})
user = {"name": "小明", "age": 20}
# 一次性添加多个元素
user.update({
"city": "上海",
"job": "程序员",
"hobby": "打篮球"
})
print(user)
# 输出:{'name': '小明', 'age': 20, 'city': '上海', 'job': '程序员', 'hobby': '打篮球'}
✅ 适用场景:需要一次性加很多键值对时,代码更整洁。
3. 安全添加:setdefault() 方法
这个方法很特别:
user = {"name": "小明", "age": 20}
# 键不存在 → 添加成功
user.setdefault("city", "广州")
print(user) # {'name': '小明', 'age': 20, 'city': '广州'}
# 键已存在 → 不修改,返回原值
user.setdefault("age", 30)
print(user) # {'name': '小明', 'age': 20, 'city': '广州'}
✅ 适用场景:怕覆盖原有数据,只想「有则不动、无则添加」。
三、字典修改元素(2种常用方法)
修改元素的核心:键必须已存在,否则会变成添加!
1. 最常用:直接赋值修改
语法:字典名[已有键] = 新值
user = {"name": "小明", "age": 20}
# 修改年龄
user["age"] = 25
# 修改姓名
user["name"] = "小红"
print(user)
# 输出:{'name': '小红', 'age': 25}
2. 批量修改:update() 方法
和批量添加用法一样,适合一次性改多个值:
user = {"name": "小明", "age": 20, "city": "北京"}
# 批量修改
user.update({
"age": 26,
"city": "深圳"
})
print(user)
# 输出:{'name': '小明', 'age': 26, 'city': '深圳'}
四、1张表总结核心用法
| | |
|---|
| dict[key] = value | |
| dict.update({...}) | |
| dict.setdefault(key, value) | |
五、新手必避坑!
- 字典的键(key)不能重复,重复键会自动覆盖旧值;
- 键可以是:字符串、数字、元组(不可变类型),不能是列表;
- 修改元素时,一定要确保键存在,否则会变成「添加元素」。
总结
- 添加元素:直接赋值、
update()、setdefault(),按需选择; - 修改元素:直接赋值、
update(),键必须已存在;