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

作者:Nurbiya_K 时间:2022-08-04 05:25:16 

有两种方法

当知道字典的键时:

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'}

来源:https://blog.csdn.net/Nurbiya_K/article/details/104650418

标签:python,字典键,对应值
0
投稿

猜你喜欢

  • Python搜索引擎实现原理和方法

    2023-06-26 05:35:32
  • ASP分段读取数据库代码

    2009-10-12 12:28:00
  • python用什么编辑器进行项目开发

    2021-04-17 19:25:20
  • Go中过滤范型集合性能示例详解

    2024-04-27 15:27:35
  • Python 编码规范(Google Python Style Guide)

    2023-04-12 03:49:35
  • 基于pycharm的beautifulsoup4库使用方法教程

    2022-12-05 22:47:05
  • python+splinter自动刷新抢票功能

    2023-07-08 11:33:42
  • Python学习之基础语法介绍

    2022-03-22 22:08:54
  • Python实现人脸识别并进行视频跟踪打码

    2022-08-04 22:57:25
  • SQL重复记录处理(查找,过滤,删除)

    2008-11-17 20:47:00
  • TensorFlow可视化工具TensorBoard默认图与自定义图

    2023-03-03 06:53:22
  • 在Python中操作字典之clear()方法的使用

    2021-10-02 15:57:38
  • 用Frontpage设计网站主页

    2008-10-23 13:44:00
  • python pygame实现挡板弹球游戏

    2022-11-25 17:50:42
  • Python中创建二维数组

    2023-11-24 15:14:54
  • Python之ReportLab绘制条形码和二维码的实例

    2023-06-26 09:43:30
  • Django中的JWT身份验证的实现

    2022-10-28 23:01:54
  • JS实现向表格行添加新单元格的方法

    2024-02-25 03:09:26
  • 浅谈python和C语言混编的几种方式(推荐)

    2021-11-30 02:48:51
  • SQL server 表数据改变触发发送邮件的方法

    2024-01-23 02:15:48
  • asp之家 网络编程 m.aspxhome.com