添加、修改和删除字典元素

news2024/9/20 19:54:48

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

由于字典是可变序列,所以可以随时在字典中添加“键-值对”。向字典中添加元素的语法格式如下:

dictionary[key] = value

参数说明:

l   dictionary:表示字典名称。

l   key:表示要添加元素的键,必须是唯一的,并且不可变,例如可以是字符串、数字或者元组。

l   value:表示元素的值,可以是任何数据类型,不是必须唯一的。

例如,还以保存4位美女星座的场景为例,在创建的字典中添加一个元素,并显示添加后的字典,代码如下:

dictionary =dict((('绮梦', '水瓶座'),('冷伊一','射手座'), ('香凝','双鱼座'), ('黛兰','双子座'))) 

dictionary["碧琦"] = "巨蟹座"       # 添加一个元素

print(dictionary)

执行结果如下:

{'绮梦': '水瓶座', '冷伊一': '射手座', '香凝': '双鱼座', '黛兰': '双子座', '碧琦': '巨蟹座'}

从上面的结果中可以看到,字典中又添加了一个键为“碧琦”的元素。

由于在字典中,“键”必须是唯一的,如果新添加元素的“键”与已经存在的“键”重复,那么将使用新的“值”替换原来该“键”的值,这也相当于修改字典的元素。例如,再添加一个“键”为“香凝”的元素,设置她的星座为“天蝎座”。可以使用下面的代码:

dictionary =dict((('绮梦', '水瓶座'),('冷伊一','射手座'), ('香凝','双鱼座'), ('黛兰','双子座'))) 

dictionary["香凝"] = "天蝎座"       # 添加一个元素,当元素存在时,则相当于修改功能

print(dictionary)

执行结果如下:

{'绮梦': '水瓶座', '冷伊一': '射手座', '香凝': '天蝎座', '黛兰': '双子座'}

从上面的结果可以看到,字典中并没有添加一个新的“键”―“香凝”,而是直接对“香凝”进行了修改。

当字典中的某一个元素不需要时,可以使用del命令将其删除。例如,要删除字典dictionary中的键为“香凝”的元素,可以使用下面的代码:

dictionary =dict((('绮梦', '水瓶座'),('冷伊一','射手座'), ('香凝','双鱼座'), ('黛兰','双子座')))

del dictionary["香凝"]            # 删除一个元素

print(dictionary)

执行结果如下:

{'绮梦': '水瓶座', '冷伊一': '射手座', '黛兰': '双子座'}

从上面的执行结果中可以看到,在字典dictionary中只剩下3个元素了。

注意:当删除一个不存在的键时,将抛出如图27所示的异常。

图27  删除一个不存在的键时抛出的异常

因此,为防止删除不存在的元素时抛出异常,可将上面的代码修改成如下内容:

dictionary =dict((('绮梦', '水瓶座'),('冷伊一','射手座'), ('香凝','双鱼座'), ('黛兰','双子座')))

if "香凝1" in dictionary:                        # 如果存在

    del dictionary["香凝1"]                     # 删除一个元素

print(dictionary)

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

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

相关文章

有哪些永久免费的进销存管理软件?

我明白许多中小企业在寻求进销存系统时,希望能找到一款完全免费的解决方案,以减轻经济压力。这种心态非常正常,毕竟成本是任何企业都需要仔细考虑的因素。然而,我要强调的是,市场上那些声称“完全免费”的进销存系统&a…

【记录】初次本地搭建的模型-MiniCPM 2B

前言 查阅众多开源大模型后,打算动手尝试搭建端侧模型,看看效果。选中MiniCPM主要是因为参数小,同时中文支持相对较好。 首先对按照官网提供的demo进行了尝试,然后在colab中完成了一个webui程序并测试,最后通过docker环…

MySQL(二)基本SQL语句以及基本函数应用

1、基本SQL语句 MySQL中定义数据字段的类型对你数据库的优化是非常重要的。 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 - 函数应用在sql语句中 -- 临时表 select now() from dual;-- 数…

分布式一致性必备:一文读懂Raft算法

本文作者:小米,一个热爱技术分享的29岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货! 大家好!我是小米,一个热爱分享技术的29岁程序员哥哥。今天我们来聊聊分布式系统中的一个重要算法——Raft。这个算法专门用于管理分布式系统中…

学习100个Unity Shader (18) --- 几何着色器(Geometry Shader)

文章目录 概述编写格式举例应用举例(用预制体球的每个顶点画一个立方体)参考 概述 vertex shader --> [geometry shader] --> fragment shader。[]: 可选阶段。输入图元 —> geometry shader —> 其他图元 编写格式 [maxcertexcount(N)] …

会声会影2024旗舰版神器,让你的视频秒变大片,小白也能轻松上手

在数字时代,视频已经成为了人们表达自我、记录生活的重要方式。无论是旅行中的美景,还是生活中的点滴瞬间,我们都渴望能够用镜头捕捉下来,并通过精心剪辑,将这些美好的画面永远珍藏。然而,对于大多数人来说…

百川大模型拿下国产第一,AI助手「百小应」上线,比Kimi强不少

最近几天,国内 AI 创业公司正在连续刷新大模型的能力上限。 5 月 22 日,百川智能发布最新一代基座大模型 Baichuan 4,同时推出了首款 AI 助手「百小应」。 相较 1 月份发布的 Baichuan 3,新一代模型在各项能力上均有大幅提升&am…

OrangePi AIpro评测 - 基础操作篇

0. 环境 ●OrangePi AIpro ●win10笔记本 ●路由器 准备下win10电脑、路由器,这些板卡通常是在网络正常的环境下才方便测试。 还要准备OrangePi AIpro的官方资料: http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-suppo…

牛客NC164 最长上升子序列(二)【困难 贪心+二分 Java/Go/PHP/C++】

题目 题目链接: https://www.nowcoder.com/practice/4af96fa010c44638a7e112abf65f7237 思路 贪心二分 所谓贪心,就是往死里贪,所以对于最大上升子序列,结尾元素越小,越有利于后面接上其他的数,也就可能变…

麒麟系统firewalld限制指定的ip访问指定的端口

先开放所有端口 然后第三个限制会把第四个第五个拦住 so 这个是错误案例 accecpt 接受 reject 拒绝

为什么短剧突然爆火?背后究竟谁在为流量买单?

为什么短剧突然爆火?背后究竟谁在为流量买单? 文丨微三云营销总监胡佳东,点击上方“关注”,为你分享市场商业模式电商干货。 - 今年很多朋友交流的更多的商业热门话题就是“短剧”,目前我国拥有超10亿的短视频用户&a…

利用ESP32(Arduino IDE)向匿名上位机发送欧拉角

文章目录 一. 匿名上位机介绍二. 匿名协议说明1. 匿名协议官方说明文档2. 协议说明 三. 向匿名上位机发送数据(基于Arduino IDE的esp32)四. 运行效果 一. 匿名上位机介绍 匿名上位机官方介绍视频 匿名上位机官方下载 二. 匿名协议说明 1. 匿名协议官方说明文档 官方对于协…

2024年短视频评论区批量爬取采集软件

一、背景说明 前言 评论区引流,顾名思义,是通过在视频下方进行留言评论、回复评论,吸引用户的注意,从而和你的账号产生互动、交易。比如,在一个关于健身的视频下方,留言分享自己的健身经验或者提出问题。…

西门子S7-1200加入MRP 环网用法

MRP(介质冗余)功能概述 SIMATIC 设备采用标准的冗余机制为 MRP(介质冗余协议),符合 IEC62439-2 标准,典型重新组态时间为 200ms,每个环网最多支持 50个设备。​博途TIA/WINCC社区VX群 ​博途T…

springboot+vue+mybatis基于java web的公益网站的设计与实现+jsp+PPT+论文+讲解+售后

现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本公益网站就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使…

docker搭建gitlab及默认密码修改及配置修改

推荐官方文档 https://docs.gitlab.com/17.0/ee/install/docker.html 我使用的是docker run的方式,官方文档后面有docker-compose、swarm、k8s的部署文档 版本说明 1:可以部署gitlab-ce社区版和gitlab-ee企业版,然后,鉴于是个人…

上海AI lab发布MathBench,GPT-4o的数学能力有多强?

大模型数学能力哪家强? 最近,上海AI lab构建了一个全面的多语言数学基准——MathBench。与现有的基准不同的是,MathBench涵盖从小学、初中、高中、大学不同难度,从基础算术题到高阶微积分、统计学、概率论等丰富类别的数学题目&a…

基于51单片机的函数发生器设计

一.硬件方案 此函数信号发生器是基于单片机AT89C51设计而成的,能够产生频率范围在0Hz—535Hz的锯齿波、正弦波、三角波、矩形波四种波形,并且能够通过液晶屏1602显示各自的波形类型以及频率数值。电路主要由51单片机最小系统DA0832模数转换模块运放模块…

Star CCM+绘图显示设置

前言 如前文介绍,根据报告创建监视器与绘图后,在绘图中会出现报告绘图。此处可以自定义绘图的格式,如网格显示、字体大小、曲线的粗细等。同时也可以根据需要创建右坐标,分别监测不同类型的函数数值。为此方便后期输出仿真报告。…

nginx文件解析漏洞测试

环境条件:ubuntu14,已安装docker,docker pull ubuntu:14.04.5 一、Nginx配置 1、使用docker启动容器: docker run -itd --name ubuntu -p 8088:80 ubuntu:14.04.5 2、进入容器: docker exec -it ubuntu /bin/bash 3、然后使用以下语句安装相关环境…