Python字典查找数据的5个基础操作方法

作者:python老鸟 时间:2021-09-08 23:19:45 

前言

上一篇文章写了关于字典操作方法的增删改,这篇主要讲解如何查找字典数据。查找数据写法一共有两种,一种能够是key值查找,另外一种是按照函数的写法进行数据查找。

一、key值查找

如果当前查找的key存在,则返回对应的值,否则则报错。

代码示例:

dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
# key存在则返回对应值
print(dict1['name'])  # Rose

# key不存在则报错
print(dict1['id'])  # 报错

二、函数查找

2.1 get()

语法:

字典序列.get(key, 默认值)

注意:

如果当前查找的key不存在则返回第二个参数(默认值),如果省略第二个参数,则返回None。

快速体验:

dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
# key存在
print(dict1.get('name'))  # Rose
print(dict1.get('name', 'python'))  # Rose

# key不存在,第二个参数存在,返回第二个参数
print(dict1.get('id', 1010))  # 1010

# key不存在,第二个参数不存在,返回None
print(dict1.get('id'))  # None

2.2 keys()

语法:

字典序列.keys()

作用:

查找字典中所有的key,返回可迭代对象(可跌迭代对象就是可以用for遍历的对象)

快速体验:

dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.keys())
# 结果 dict_keys(['name', 'age', 'sex'])
# 结果是可迭代对象,用for遍历的对象

2.3 values()

语法:

字典序列.values()

作用:

查找字典中所有的value,返回可迭代对象(可跌迭代对象就是可以用for遍历的对象)

快速体验:

dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.values())
# 结果 dict_values(['Rose', 30, '女'])
# 结果是可迭代对象,用for遍历的对象

2.4 items()

语法:

字典序列.get(key, 默认值)

作用:

查找字典中所有的键值对,返回可迭代对象,里面的数据是元组,元组数据1是字典的key,元组数据2是字典key对应的值。

快速体验:

dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.items())
# 结果 dict_items([('name', 'Rose'), ('age', 30), ('sex', '女')])

dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.items())
# 结果 dict_items([('name', 'Rose'), ('age', 30), ('sex', '女')])

# 结果是可迭代对象

附:字典的常用方法

"""
字典的定义、添加和修改
"""
dictA = {}  # 空字典,没有任何的数据
dictA['name'] = 'lihua'  # 将一个键值对添加到字典中,name是key,lihua是value
print(dictA)  # 输出完整的字典
dictB = {'name': 'xiaogang', 'age': 18, 'job': [student, cook]}  # 在创建字典时就添加键值对
print(len(dictB))  # 字典同样可以通过len函数来获取键值对的长度
print(dictB['name'])  # 因为字典中key具有唯一性,所以可以通过查找key的方式来获取对应的value
dictB['name'] = 'xiaowang'  # 修改key所对应的value
"""
字典中键、值、键值对的获取
"""
dictB = {'name': 'lh', 'age': '18', 'job': 'student'}
print(dictB.keys())  # 获取字典中全部的键
print(type(dictB.keys))  # 数据类型为dict_keys
print(dictB.values())  # 获取字典中全部的值
print(type(dictB.values()))  # 数据类型为dict_values
print(dictB.items())  # 获取字典中全部的键值对
print(type(dictB.items()))  # 数据类型为dict_values
"""
字典的遍历操作
"""
dictB = {'name': 'lh', 'age': '18', 'job': 'student'}
for item in dictB.items():
   print(item)  # 字典是可以遍历的
   pass
for key, value in dictB.items():
   print(key + '==' + value)  # 可以用两个临时变量分别接收键值对的key和value
"""
字典的更新、修改
"""
dictB = {'name': 'lh', 'age': '18', 'job': 'student'}
dictB.update({'name': 'lki'})  # 利用update函数可以进行对键值对的修改
dictB.update({'height': '159'})  # update函数还可以增加键值对,有更新字典的特征
"""
键值对的删除
"""
dictB = {'name': 'lh', 'age': '18', 'job': 'student'}
del dictB['name']  # 通过指定key可以删除键值对
dictB.pop('age')  # 通过指定key进行删除
dictB.clear()  # 清空字典
del dictB  # 删除字典

来源:https://blog.csdn.net/weixin_48728769/article/details/124246816

标签:python,字典,查询
0
投稿

猜你喜欢

  • Python中的bytes类型用法及实例分享

    2022-12-19 01:50:42
  • Django多层嵌套ManyToMany字段ORM操作详解

    2023-07-01 02:26:28
  • python读取ini配置文件过程示范

    2023-07-02 01:18:36
  • python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)

    2021-02-03 19:41:24
  • js返回顶部代码

    2011-04-25 19:21:00
  • 如何使用Python破解ZIP或RAR压缩文件密码

    2022-03-24 19:28:45
  • python使用beautifulsoup从爱奇艺网抓取视频播放

    2021-07-29 01:10:42
  • Python无法用requests获取网页源码的解决方法

    2023-04-24 07:38:04
  • Python实现感知机(PLA)算法

    2023-11-19 22:07:53
  • Python keras.metrics源代码分析

    2023-10-28 20:58:14
  • 腾讯注册页面的 JS 解密

    2009-11-18 12:50:00
  • JavaScript缓动动画函数的封装方法

    2023-08-07 10:48:26
  • 基于Python实现骰子小游戏

    2023-07-11 22:39:58
  • 用Python绘制一个仿黑洞图像

    2021-10-03 03:07:57
  • 概述javascript在Google IE中的调试技巧

    2023-08-08 11:50:29
  • 如何使用Python基于接口编程的方法实现

    2023-12-24 20:15:41
  • Python中11种NumPy高级操作总结

    2023-07-31 00:00:28
  • python base64库给用户名或密码加密的流程

    2021-01-30 16:30:39
  • Asp定时执行操作、各种网页定时操作详解

    2008-06-10 17:32:00
  • javascript+css图片切换效果

    2007-08-04 20:00:00
  • asp之家 网络编程 m.aspxhome.com