Python | 开房门(map)

常把map称之为映射,就是将一个元素(通常称之为key键)与一个相对应的值(通常称之为value)关联起来

通常用**字典dict**实现了映射这种数据结构

字典也是使用{}来包裹(set也是{}),每个键值对用冒号:分隔,键值对与键值对之间用逗号,分隔,其具体格式如下:

my_dict = {"mike": 99,"tom": 98,"jerry": 100
}

字典中的键数据类型必须是不可变的(字符串、数字、元组等), 但是值可以是任意的数据类型。

【注意】:如果直接创建一个{}, 表示这是一个空字典,而并非一个空集合。也使用内置函数 dict()创建字典,如果想要给字典添加键值对,可以直接通过dict[key] = value的形式。

创建空字典

dict1 = {}dict2 = dict()

添加键对值

dict1["Mike"] = 99
dict1["Tom"] = 98
dict1["Jerry"] = 97

更新值

dict["Mike"] = 100

访问值

print(dict1["Mike"])

删除键对值:del(),clear()

del dict1["Mike"]     #删除对应的键对值
dict1.clear()    #清空字典
del dict  #删除字典

检查字典中的是否存在也是使用in来判断, 如果键在字典中返回 true, 否则 返回 false 。

if "mike" in my_dict:print(my_dict["mike"])
else:print("mike doesn't exist in the dictionary")

for遍历键值

        字典的遍历需要搭配使用fordict.items()items()方法返回了字典中的所有键值对的视图对象。这个视图象可以用于迭代字典中的键值对。

for key, value in dict1.items():print(f"Key: {key}, Value: {value}")

代码如下

s = int(input())
for _ in range(s):n = int(input())my_dict = dict()for _ in range(n):# key = input()# value = input()# my_dict[key] = valuekey, door = map(int,input().split())      #python支持这样同时赋值my_dict[key] = doordoor = int(input())flag = 0for key, value in my_dict.items():if value == door:print(key)flag = 1breakif flag == 0:print("Can't open the door.")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/24327.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ChatGPT-4o独家揭秘:全国一卷高考语文作文如何轻松斩获满分?

​一、2024年全国一卷高考 二、2018年全国一卷高考 三、2016年全国一卷高考 一、2024年全国一卷高考 技术进步的悖论:我们的问题真的在减少吗? 引言 随着互联网的普及和人工智能的应用,越来越多的问题能够快速得到解答。然而,这引…

网络空间安全数学基础·同余式

6.1 剩余系&#xff08;掌握&#xff09; 6.2 同余式概念与一次同余式&#xff08;熟练&#xff09; 6.3 中国剩余定理&#xff08;熟练&#xff09; 6.1 剩余系 设m是正整数&#xff0c;模m同余的全体整数是一个模m剩余类&#xff0c;即可表示为a qmr&#xff0c; 0≤r<…

idea使用和了解

官网&#xff1a;IntelliJ IDEA – the Leading Java and Kotlin IDE

【MyBatisPlus条件构造器】

文章目录 什么是条件构造器&#xff1f;使用步骤1. 引入 MyBatisPlus 依赖2. 创建实体类3. 使用条件构造器查询4. 执行查询 示例代码 什么是条件构造器&#xff1f; 条件构造器是 MyBatisPlus 提供的一种灵活的查询条件设置方式&#xff0c;它可以帮助开发者构建复杂的查询条件…

持续总结中!2024年面试必问 20 道分布式、微服务面试题(二)

上一篇地址&#xff1a;持续总结中&#xff01;2024年面试必问 20 道分布式、微服务面试题&#xff08;一&#xff09;-CSDN博客 三、CAP定理是什么&#xff1f; CAP定理是分布式系统理论中的一个基本概念&#xff0c;由计算机科学家Eric Brewer在2000年提出&#xff0c;并由…

常见的api:Runtime Object

一.Runtiem的成员方法 1.getRuntime() 当前系统的运行环境 2.exit 停止虚拟机 3.avaliableProcessors 获取Cpu线程的参数 4.maxMemory JVM能从系统中获取总内存大小(单位byte) 5.totalMemory JVM已经从系统中获取总内大小(单位byte) 6.freeMemory JVM剩余内存大小(…

数组对象数据修改后页面没有更新,无法进行编辑,校验失效问题

在 Vue 中&#xff0c;当你通过 Object.assign 或其他方式修改了对象中的某个属性时&#xff0c;Vue 并不会触发组件重新渲染&#xff0c;因此表单中的 input 框无法及时更新。这可能导致在修改表单数据后&#xff0c;页面没有更新&#xff0c;而且表单校验也失效的情况。这是因…

【MATLAB高级编程】入门篇 | 向量化编程

【入门篇】向量化编程 1. 什么是向量?2. 向量的创建2.1 行向量2.2 列向量2.3 使用冒号运算符2.4 使用`linspace`和`logspace`3. 向量的基本操作3.1 向量元素访问3.2 向量的长度3.3 向量的加法和减法3.4 向量的点乘和叉乘3.5 向量的元素乘法和除法4. 向量的高级操作4.1 逻辑索引…

牛客练习赛126(O(n)求取任意大小区间最值)

牛客练习赛126(O(n)求取任意大小区间最值) 牛客练习赛126 A.雾粉与签到题 题意&#xff1a;给出长度为n的数组, 顺序选出任意三个元素&#xff0c;最小化第二个元素 思路&#xff1a; 遍历除了第一个和最后一个元素取最小值即可 AC code&#xff1a; void solve() {int…

深度学习模型中的 `.clone` 作用分析----针对CUDA可能出现的BUG

深度学习模型中的 .clone 作用分析 问题描述与解决 在训练自定义网络结构时出现了两个错误&#xff1a; RuntimeError: CUDA error: device-side assert triggeredRuntimeError: one of the variables needed for gradient computation has been modified by an inplace ope…

使用 tc (Traffic Control)控制网络延时

设置网络延时 1500ms 800ms tc qdisc add dev eth0 root netem delay 1500ms 800msping 测试 ping www.baidu.com取消设置网络延时 sudo tc qdisc del dev eth0 root

解决splice改变原数组的BUG

项目场景&#xff1a; 项目中难免遇到需要删除改变数组的方法&#xff0c;去重&#xff0c;删除不要的数据等 问题描述&#xff1a; 但是splice方法会删除掉数据改变原数组&#xff0c;返回的是改变之后的数组&#xff0c;即使你是赋值的还是会影响到原数组的数据 GoodsInfo…

leetcode刷题记录31-50. Pow(x, n)

问题描述 实现 pow(x, n) &#xff0c;即计算 x 的整数 n 次幂函数&#xff08;即&#xff0c;x^n &#xff09;。 示例 示例 1&#xff1a; 输入&#xff1a;x 2.00000, n 10 输出&#xff1a;1024.00000示例 2&#xff1a; 输入&#xff1a;x 2.10000, n 3 输出&#xff…

inflight 守恒和带宽资源守恒的有效性

接着昨天的问题&#xff0c;inflight 守恒的模型一定存在稳定点吗&#xff1f;并不是。如果相互抑制强度大于自我抑制强度&#xff0c;系统也会跑飞&#xff1a; 模拟结果如下&#xff1a; 所以一定要记得 a < b。 比对前两个图和后两个图的 a&#xff0c;b 参数关系&am…

【ARM64 常见汇编指令学习 19.2 -- ARM64 地址加载指令 ADR 详细介绍】

文章目录 地址加载指令 ADRADR 指令使用场景例子注意事项 地址加载指令 ADR ARMv8 架构引入了一系列的改进和扩展&#xff0c;包括对汇编指令集的更新。在这之中&#xff0c;ADR 指令是一个重要的组成部分&#xff0c;它用于计算并加载一个地址到寄存器。 ADR 指令 ADR 指令…

PS初级|写在纸上的字怎么抠成透明背景?

前言 上一次咱们讲了很多很多很多的抠图教程&#xff0c;这次继续。。。最近有小伙伴问我&#xff1a;如果是写在纸上的字&#xff0c;要怎么把它抠成透明背景。 这个其实很简单&#xff0c;直接来说就是选择通道来抠。但有一点要注意的是&#xff0c;写在纸上的字&#xff0…

鸿蒙开发的南向开发和北向开发

鸿蒙开发主要分为设备开发和应用开发两个方向&#xff0c;也叫南向开发和北向开发&#xff1a; 鸿蒙设备开发(南向开发&#xff09;&#xff0c;要侧重于硬件层面的开发&#xff0c;涉及硬件接口控制、设备驱动开发、鸿蒙系统内核开发等&#xff0c;目的是使硬件设备能够兼容并…

android antirollback verno 获取方法

ReadRollbackIndex.exe 获取 调查avbVBMeta结构体 typedef struct AvbVBMetaImageHeader { /* 0: Four bytes equal to "AVB0" (AVB_MAGIC). */ uint8_t magic[AVB_MAGIC_LEN]; /* 4: The major version of libavb required for this header. */ uint32_t…

MySQL创建表的时候建立联合索引

1.MySQL创建表建立联合索引的步骤 在MySQL中&#xff0c;联合索引&#xff08;也称为复合索引或多列索引&#xff09;是基于表中的多个列创建的索引。这种索引可以提高多列查询的性能&#xff0c;特别是当查询条件涉及这些列时。下面是一个详细的步骤和示例&#xff0c;说明如…

mac前端com+f与com+shift+f查找文章内容

title: mac前端comf与comshiftf查找文章内容 date: 2024-06-02 16:28:28 tags: vue3 在vscode中我们常常都需要查找相关的制定&#xff0c;在mac本中操作如下 commandf查找本页相关内容 commandshiftf全局查找相关的内容