【Python】字典常见操作

  • 定义
    • 方式一:变量名 = dict()
    • 方式二:变量名 = {}
  • 遍历
    • 正常遍历:直接遍历字典,遍历的是字典的key值
    • keys()方法返回一个可迭代对象,可以使用 list() 来转换为列表,列表为字典中所有的key
    • values()方法返回一个可迭代对象,可以使用 list() 来转换为列表,列表为字典中的所有value
    • items() 方法以列表返回可遍历的(键, 值) 元组数组
  • 查询操作:字典中不支持下标操作,想要访问字典中的value值,需要通过字典中的key值
    • dict[key]
    • get()函数根据key值获取对应的value值
  • 添加/修改操作
  • 删除操作
    • pop()方法删除字典给定键 key 及对应的值,返回值为被删除的值。key 值必须给出。 否则,返回 default 值
    • del根据key值删除字典中键值对
    • clear() 清空,将字典中所有的键值对删除

定义

字典dict由键值对(key, value)组成,每个键值对之间用,(英文逗号)隔开

  • 字典的key值(键)一般是字符串,也可以是int、float等,但是不能为列表
  • 字典的key值(键)是唯一的,不能重复
  • 字典中的value可以是任意类型

方式一

语法

my_dict = dict()

示例

my_dict = dict()  # 定义空字典
print(f"我是字典定义方式一:{my_dict, type(my_dict)}")

输出
运行结果

方式二

语法

my_dict = {}

示例

my_dict = {}  # 定义空字典
print(f"我是字典定义方式二:{my_dict, type(my_dict)}")
my_dict1 = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
print(f"我是字典定义方式二:{my_dict1, type(my_dict1)}")

输出
运行结果

遍历

正常遍历

简介

直接遍历字典,遍历的是字典的key值

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
# i 是字典中的key
for i in my_dict:
    print(i, my_dict[i])

输出
运行结果

keys()

简介

keys() 方法返回一个可迭代对象,可以使用 list() 来转换为列表,列表为字典中所有的key

语法

dict.keys()

返回值

返回一个迭代器

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
result = my_dict.keys()
print(type(result), result)
for key in my_dict.keys():
    print(key)

输出
运行结果

values()

简介

values() 方法返回一个可迭代对象,可以使用 list() 来转换为列表,列表为字典中的所有value

语法

dict.values()

返回值

返回一个迭代器

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
result = my_dict.keys()
print(type(result), result)
for value in my_dict.values():
    print(value)

输出
运行结果

items()

简介

items() 方法以列表返回可遍历的(键, 值) 元组数组

语法

dict.items()

返回值

返回可遍历的(键, 值) 元组数组

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
result = my_dict.keys()
print(type(result), result)
for item in my_dict.items():
    print(item)
print("=" * 20)
# 遍历出来的内容是一个元组类型的数据,元组中有两个数据(key, value),所以这个地方可以使用两个变量
# key是元组中第一个数据,value是元组中第二个数据
for key, value in my_dict.items():
    print(key, value)

输出
运行结果

查询操作

字典中不支持下标操作,想要访问字典中的value值,需要通过字典中的key值

dict[key]

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
print(f"我要访问name对应的value的值:{my_dict['name']}")
print(f"我要访问sex对应的value的值:{my_dict['sex']}")
# key值不存在会直接报错
print(f"我要访问height对应的value的值:{my_dict['height']}")

输出
运行结果

get()

简介

get() 函数根据key值获取对应的value值

语法

dict.get(key, data=None)

参数

  • key – 字典中要查找的键
  • data – 如果指定的键不存在时,返回该默认值

返回值

返回指定键的值,如果键不在字典中返回默认值 None 或者指定的默认值

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
print(f"通过get()函数访问name对应的value的值:{my_dict.get('name')}")
print(f"通过get()函数访问height对应的value的值:{my_dict.get('height', '稍后再试')}")

输出
运行结果

添加/修改操作

  • 字典中的key值不能重复
  • dict[key] = value
  • key值不存在就是添加操作
  • key值存在就是修改操作

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
print(f"我是原字典:{my_dict}")
# key值存在,修改数据
my_dict["age"] = 20
print(f"修改age对应的value的值:{my_dict}")
# 通过key值like添加value值music
my_dict["like"].append("music")
print(f"修改like对应的value的值:{my_dict}")
# key值不存在,添加数据
my_dict["height"] = 170
print(f"添加height对应的value的值:{my_dict}")

输出
运行结果

删除操作

pop()

简介

pop() 方法删除字典给定键 key对应的值返回值被删除的值。key 值必须给出。 否则,返回 default 值

语法

pop(key[,data])

参数

  • key: 要删除的键值
  • data: 如果没有 key,返回 data 值

返回值

返回被删除的值

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
print(f"我是原字典:{my_dict}")
result = my_dict.pop('age')
print(f"删除age对应的的value值是:{result}")
print(f"通过pop()函数删除age键值对:{my_dict}")

输出
运行结果

del

简介

根据key值删除字典中键值对

语法

del dict[key]

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
print(f"我是原字典:{my_dict}")
del my_dict["like"]
print(f"通过del删除like键值对:{my_dict}")

输出
运行结果

clear()

简介

清空,将字典中所有的键值对删除

语法

dict.clear()

示例

my_dict = {"name": "小明", "age": 18, "sex": "男", "like": ["run", "study", "game"]}
print(f"我是原字典:{my_dict}")
my_dict.clear()
print(f"通过clear()函数清空my_dict:{my_dict}")

输出
运行结果


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值