脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|shell|

服务器之家 - 脚本之家 - Python - 使用Python获取字典键对应值的两种方法

使用Python获取字典键对应值的两种方法

2022-12-08 10:36Nurbiya_K Python

对于字典通过键获得值非常简单,但通过值获得键则需绕些弯子,下面这篇文章主要给大家介绍了关于如何使用Python获取字典键对应值的相关资料,需要的朋友可以参考下

有两种方法

当知道字典的键时:

unit_rooms={ 3:{301:[1,80],302:[1,80],303:[2,90],304:[2,90]},
           4:{401:[1,80],402:[1,80],403:[2,90],404:[2,90]},
           5:{501:[1,80],502:[1,80],503:[2,90],504:[2,90]}
          }
          
for i in range(3,6):
	rooms=unit_rooms[i]
	print(rooms)

运行结果:

使用Python获取字典键对应值的两种方法

当不知道字典的键时:

unit_rooms = {3:{301:[1,80],302:[1,80],303:[2,90],304:[2,90]},
           4:{401:[1,80],402:[1,80],403:[2,90],404:[2,90]},
           5:{501:[1,80],502:[1,80],503:[2,90],504:[2,90]}
          }
for rooms in unit_rooms.values():
	print(rooms)

运行结果:

使用Python获取字典键对应值的两种方法

获取字典的值:

for value in DictName.values():
# value的名字可以自行另取
# DictName是要遍历的字典的名称
# .values():是固定的用法

获取键值:

for k,v in DictName.items():
#遍历字典的键值对,k对应键,v对应值
#k,v 的名字可以自己取,DictName是字典名
unit_rooms = {3:{301:[1,80],302:[1,80],303:[2,90],304:[2,90]},
           4:{401:[1,80],402:[1,80],403:[2,90],404:[2,90]},
           5:{501:[1,80],502:[1,80],503:[2,90],504:[2,90]}
          }
for sub_dict in unit_rooms.values():
# 遍历大字典的值,即小字典sub_dict
  for room,info in sub_dict.items():
      print('房间号:%d,方向:%d,面积:%d'%(room,info[0],info[1]))

运行结果:

使用Python获取字典键对应值的两种方法

方向1代表南北,方向2代表东西

把数字替换掉:

unit_rooms = {3:{301:[1,80],302:[1,80],303:[2,90],304:[2,90]},
           4:{401:[1,80],402:[1,80],403:[2,90],404:[2,90]},
           5:{501:[1,80],502:[1,80],503:[2,90],504:[2,90]}
           }
for sub_dict in unit_rooms.values():
  for room,info in sub_dict.items():
      dire = ['', '南北', '东西']
      #建立一个列表,第0个元素为空,第1个元素为'南北',第2个元素为'东西'
      print(dire[info[0]])

举例:

unit_rooms = {3:{301:[1,80],302:[1,80],303:[2,90],304:[2,90]},
           4:{401:[1,80],402:[1,80],403:[2,90],404:[2,90]},
           5:{501:[1,80],502:[1,80],503:[2,90],504:[2,90]}
           }
for sub_dict in unit_rooms.values():
  for room,info in sub_dict.items():
      dire = ['', '南北', '东西']
      print('户室号:%d 朝向:%s 面积:%d' % (room,dire[info[0]],info[1]))            

运行结果:

使用Python获取字典键对应值的两种方法

附:字典dic最大值对应的键

步骤:(1)用max()函数找出最大的值maxValue;(2)套用一的自定义函数

def getKey(dic, value):
  if value not in dic.values():
      return None
  result = set()
  for key in dic:
      if dic[key]==value:
          result.add(key)
  return result

dic = {'a':2, 'b':1, 'c':10, 'd':10}

maxValue=max(dic.values())
result = getKey(dic,maxValue)

>> {'c','d'}

总结

到此这篇关于使用Python获取字典键对应值的文章就介绍到这了,更多相关Python获取字典键对应值内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/Nurbiya_K/article/details/104650418

延伸 · 阅读

精彩推荐
  • Python零基础使用Python读写处理Excel表格的方法

    零基础使用Python读写处理Excel表格的方法

    这篇文章主要介绍了Python读写处理Excel表格,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着...

    Cloudox_9952021-06-22
  • Pythonpython实现鸢尾花三种聚类算法(K-means,AGNES,DBScan)

    python实现鸢尾花三种聚类算法(K-means,AGNES,DBScan)

    这篇文章主要介绍了python实现鸢尾花三种聚类算法(K-means,AGNES,DBScan),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价...

    weixin_421341416502021-07-25
  • Pythonpython实现简单购物商城

    python实现简单购物商城

    这篇文章主要为大家详细介绍了python实现简单购物商城的相关资料,具有实用性和一定的参考价值,感兴趣的朋友可以参考一下 ...

    百衲本9462020-08-23
  • Pythonpython机器学习理论与实战(六)支持向量机

    python机器学习理论与实战(六)支持向量机

    这篇文章主要介绍了python机器学习理论与实战第六篇,支持向量机的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    marvin5219842021-01-06
  • Pythonpytorch中的model.eval()和BN层的使用

    pytorch中的model.eval()和BN层的使用

    这篇文章主要介绍了pytorch中的model.eval()和BN层的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...

    那抹阳光199410252021-11-10
  • Pythonpygame游戏之旅 游戏中添加显示文字

    pygame游戏之旅 游戏中添加显示文字

    这篇文章主要为大家详细介绍了pygame游戏之旅的第5篇,教大家如何在游戏中添加显示文字,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    观月执白8112021-04-21
  • PythonPyQt5爬取12306车票信息程序的实现

    PyQt5爬取12306车票信息程序的实现

    12306是学习爬虫的比较好的一个练手网站。本文主要实现了PyQt5爬取12306车票信息程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    Patio F411012021-11-02
  • PythonPython标准库calendar的使用方法

    Python标准库calendar的使用方法

    本文主要介绍了Python标准库calendar的使用方法,calendar模块主要由Calendar类与一些模块方法构成,Calendar类又衍生了一些子孙类来帮助我们实现一些特殊的功...

    玉米丛里吃过亏6702022-03-06