前言
上一篇文章写了关于字典操作方法的增删改,这篇主要讲解如何查找字典数据。查找数据写法一共有两种,一种能够是key值查找,另外一种是按照函数的写法进行数据查找。
一、key值查找
如果当前查找的key存在,则返回对应的值,否则则报错。
代码示例:
1
2
3
4
5
6
|
dict1 = { 'name' : 'Rose' , 'age' : 30 , 'sex' : '女' } # key存在则返回对应值 print (dict1[ 'name' ]) # Rose # key不存在则报错 print (dict1[ 'id' ]) # 报错 |
二、函数查找
2.1 get()
语法:
字典序列.get(key, 默认值)
注意:
如果当前查找的key不存在则返回第二个参数(默认值),如果省略第二个参数,则返回None。
快速体验:
1
2
3
4
5
6
7
8
9
10
|
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遍历的对象)
快速体验:
1
2
3
4
|
dict1 = { 'name' : 'Rose' , 'age' : 30 , 'sex' : '女' } print (dict1.keys()) # 结果 dict_keys(['name', 'age', 'sex']) # 结果是可迭代对象,用for遍历的对象 |
2.3 values()
语法:
字典序列.values()
作用:
查找字典中所有的value,返回可迭代对象(可跌迭代对象就是可以用for遍历的对象)
快速体验:
1
2
3
4
|
dict1 = { 'name' : 'Rose' , 'age' : 30 , 'sex' : '女' } print (dict1.values()) # 结果 dict_values(['Rose', 30, '女']) # 结果是可迭代对象,用for遍历的对象 |
2.4 items()
语法:
字典序列.get(key, 默认值)
作用:
查找字典中所有的键值对,返回可迭代对象,里面的数据是元组,元组数据1是字典的key,元组数据2是字典key对应的值。
快速体验:
1
2
3
4
5
6
7
8
9
|
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', '女')]) # 结果是可迭代对象 |
附:字典的常用方法
1
2
3
4
5
6
7
8
9
10
|
""" 字典的定义、添加和修改 """ 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 |
1
2
3
4
5
6
7
8
9
10
|
""" 字典中键、值、键值对的获取 """ 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 |
1
2
3
4
5
6
7
8
9
|
""" 字典的遍历操作 """ 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 |
1
2
3
4
5
6
|
""" 字典的更新、修改 """ dictB = { 'name' : 'lh' , 'age' : '18' , 'job' : 'student' } dictB.update({ 'name' : 'lki' }) # 利用update函数可以进行对键值对的修改 dictB.update({ 'height' : '159' }) # update函数还可以增加键值对,有更新字典的特征 |
1
2
3
4
5
6
7
8
|
""" 键值对的删除 """ dictB = { 'name' : 'lh' , 'age' : '18' , 'job' : 'student' } del dictB[ 'name' ] # 通过指定key可以删除键值对 dictB.pop( 'age' ) # 通过指定key进行删除 dictB.clear() # 清空字典 del dictB # 删除字典 |
总结
到此这篇关于Python字典查找数据的5个基础操作方法的文章就介绍到这了,更多相关Python字典查找数据内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/weixin_48728769/article/details/124246816