Python语言:字典的使用

news2024/11/19 9:28:57

字典是一种存储无序的可以修改内容的的容器。

字典的具体含义:

现实生活中的字典是通过检索到一个字从而找到它所对应的的含义,字和字的含义是互相对应的,python世界里的字典和这个字典的用法类似,字典是由kye和相对应的value构成,通过key找到所对应的value。key和value统称为键值对,一个字典里可以有无数个键值对。

字典的特点:

  1. 字典的本质是可以存储数据而且可以修改数据的一种容器。
  2. key和value是互相对应的。通过key找到所对应的value。
  3. 字典的key和value可以是任意类型(key不可以是字典)。
  4. 字典是可以嵌套的。
  5. 字典的内容是保存在一个花括号里的。
  6. 不支持下标索引,支持for循环,不支持while循环。

字典的具体使用:

  • 定义一个空字典
# 定义一个空字典
a_dict = {}
print(a_dict)  # 打印空字典
print(type(a_dict))  # 打印输出类型

代码运行结果如下:

  • 给空字典赋值。

把下面成绩表中的数据用字典的形式表现出来。

代码如下:

# 给空字典赋值
a_dict = {"李华":50,"王强":80,"丽丽":20}
print(a_dict)  # 打印输出

代码运行结果如下:

  • 通过key找到相对应的value值

       语法格式:字典名["key"]

代码如下:

# 通过key找到所对应的value值 :查找李华的成绩
a_dict = {"李华":50,"王强":80,"丽丽":20}
print(a_dict["李华"])

运行结果如下:

  • 字典的嵌套

把下面成绩表中的数据用字典的形式表现出来。

代码如下:

# 字典是可以嵌套的 打印输出李华的语文成绩
a_dict = {
    "李华":{"语文":90,"数学":80,"英语":80},
    "王强":{"语文":60,"数学":60,"英语":60},
    "丽丽":{"语文":90,"数学":80,"英语":99}
}
print(a_dict["李华"]["语文"])

代码运行结果如下:

字典的方法

  • 添加元素

        语法格式:字典名["key"] = value

        代码如下:

# 给字符串添加元素
a_dict = {"李华":50,"王强":80,"丽丽":20}
a_dict["袁华"] = "20"
print(a_dict)

        运行结果如下:

  • 修改元素

        语法格式:字典名["key"] = value 注:这是新的value值

        代码如下:

# 修改元素 把李华所对应的value50修改为10
a_dict = {"李华":50,"王强":80,"丽丽":20}
a_dict["李华"] = 10
print(a_dict)

        运行结果如下:

  • 删除元素:使用pop函数。

        pop函数:他既可以删除一个元素,也可以返回被删的元素值。   

        语法格式:字典名.pop("key")

        代码如下:

# 删除元素 使用pop函数。,他既可以删除一个元素,也可以返回这个元素的值
a_dict = {"李华":50,"王强":80,"丽丽":20}
b = a_dict.pop("李华")
print(a_dict)
print(b)

        运行结果如下:

  • 清空字典:使用clear函数

        语法格式:元组名.clear()

        代码如下:

# 清空元素
a_dict = {"李华":50,"王强":80,"丽丽":20}
a_dict.clear()
print(a_dict)

        运行结果如下:

  • 获取字典中的元素个数:使用len函数

        语法格式:len(字典名)

        代码如下:

# 获取字典中的元素个数
a_dict = {"李华":50,"王强":80,"丽丽":20}
print(len(a_dict))

        运行结果如下:

  • 获取字典中的全部key值:使用keys函数

        语法格式:字典名,keys()

        代码如下:

#  获取字典中的全部keys值
a_dict = {"李华":50,"王强":80,"丽丽":20}
keys = a_dict.keys()
for key in keys :
    print(key)

        运行结果如下:

通过获取到的全部key值来打印所对应的value值。

        代码如下:

#  通过获取字典中的全部keys值来找到字典中的全部value值
a_dict = {"李华":50,"王强":80,"丽丽":20}
keys = a_dict.keys()
for key in keys :
    print(key)
    print(a_dict[key])

        运行结果如下:

后记:本文是作者本人的第60篇博客,继续加油!

时间记录如下:

作者寄语:

        眼里有不朽的光芒,心中有永恒的希望。

本文结束。

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

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

相关文章

Stable Diffusion 图生图+ControlNet list index out of range

在webui1.5中用图生图ControlNet批量处理图片的时候报错: controlnet indexError: list index out of range 解决方法: 在controlNet的设置页中勾选不输出检测图即可。 参考:https://github.com/AUTOMATIC1111/stable-diffusion-webui/issu…

jdk1.8批量完成部署

第一步:源主机配置 在源主机上面上传jdk的文件包 获取jdk1.8https://download.csdn.net/download/weixin_44680802/88467044 添加java环境变量配置 export JAVA_HOME/usr/local/java/jdk1.8.0_65 export JRE_HOME${JAVA_HOME}/jre export CLASSPATH.:${JAVA_HOM…

今年暑假不AC(贪心思路)

这道题是一道贪心算法的经典问题(活动选择问题) 先说用到的贪心结论:最先结束的活动一定是最优解的一部分 证明过程如下: 假设a是所有活动中最先结束的活动,b是最优解中最先结束的活动 如果ab 则结论成立 如果a!b 则b…

拓扑排序代码模板

一些注意的点都在代码注释中了。 //有向图无环图中才有拓扑排序&#xff0c;且都是前面的编号的点指向后面编号的点 #include<iostream> #include<cstring> using namespace std; const int N 1e5 9; int e[N], ne[N], h[N], idx, n, m, d[N], q[N];void add(in…

Linux多线程【生产者消费者模型】

✨个人主页&#xff1a; 北 海 &#x1f389;所属专栏&#xff1a; Linux学习之旅 &#x1f383;操作环境&#xff1a; CentOS 7.6 腾讯云远程服务器 文章目录 &#x1f307;前言&#x1f3d9;️正文1、生产者消费者模型1.1、什么是生产者消费者模型&#xff1f;1.2、生产者消费…

MySQL 连接出现 Authentication plugin ‘caching_sha2_password的处理方法(使用第二种)

出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password. 1. 升级MySQL版本 较早的MySQL版本可能不…

澳大利亚专线现在成熟吗?

在全球化的大背景下&#xff0c;物流运输的重要性日益凸显。其中&#xff0c;澳大利亚专线作为一条连接中国与澳大利亚的物流通道&#xff0c;近年来引起了广泛的关注。那么&#xff0c;这样的物流专线在当前环境下是否已经成熟呢?我们将在接下来的文字中一一进行探讨。 首先&…

11.读取文件长度-fseek和ftell函数的使用

文章目录 简介1. 写入测试文件2. 读取文件长度 简介 主要讲使用fopen读取文件&#xff0c;配合使用fseek和ftell来读取文件长度。1. 写入测试文件 执行下方程序&#xff0c;使用fwrite函数写入40字节的数据&#xff0c;使其形成文件存入本地目录。#define _CRT_SECURE_NO_WARNI…

代码审计及示例

简介&#xff1a; 代码安全测试是从安全的角度对代码进行的安全测试评估。 结合丰富的安全知识、编程经验、测试技术&#xff0c;利用静态分析和人工审核的方法寻找代码在架构和编码上的安全缺陷&#xff0c;在代码形成软件产品前将业务软件的安全风险降到最低。 方法&#x…

【蓝桥每日一题]-贪心(保姆级教程 篇2)#纪念品分组 #gcd排序

目录 题目&#xff1a;纪念品分组 思路&#xff1a; 题目&#xff1a;gcd排序 思路&#xff1a; 题目&#xff1a;纪念品分组 思路&#xff1a; 贪心思路&#xff1a;先将数据从小到大排序&#xff08;默认&#xff09;&#xff0c;然后让最左边l和最右边r匹配&#xff0c;…

【QT】点击按钮弹出对话框的注意实现

在stack区创建对话框对象 模态对话框&#xff0c;不可以对其他窗口进行操作。 模态窗口用dlg.exec()显示窗口。 问题代码1: MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow) {ui->setupUi(this);//点击新建按钮&#xff0c;弹出一…

华为eNSP配置专题-IPSec的配置

文章目录 华为eNSP配置专题-IPSec的配置0、概要介绍1、前置环境1.1、宿主机1.2、eNSP模拟器 2、基本环境搭建2.1、终端构成和连接2.2、终端的基本配置 3、IPSec的配置3.1、通过ACL定义需要保护的数据流3.2、配置IPSec安全提议3.3、配置IPSec手动方式安全策略3.3.1、在R1上配置3…

05.大模型大数据量

文章目录 大模型顿悟时刻&#xff1a;Emergent Ability&#xff08;涌动现象&#xff09;Calibration Inverse Scaling PrizeSwitch Transformers 大数据量数据预处理去重 模型大小与训练数据的选择Instruction-tuningHuman TeachingKNN LM 部分截图来自原课程视频《2023李宏毅…

Java流(Stream)式编程

流式编程 Stream作为Java 8的一大亮点&#xff0c;它专门针对集合的各种操作提供各种非常便利&#xff0c;简单&#xff0c;高效的API,Stream API主要是通过Lambda表达式完成&#xff0c;极大的提高了程序的效率和可读性。 流式编程的概念基于函数式编程的思想&#xff0c;旨…

Linux云服务器限制ip进行ssh远程连接

对Linux云服务器限制IP进行SSH远程连接的原因主要有以下几点&#xff1a; 增加安全性&#xff1a;SSH是一种加密的网络传输协议&#xff0c;可以保护数据的机密性和完整性。通过限制SSH连接的IP地址&#xff0c;可以防止未经授权的访问和数据泄露。只有拥有访问权限的IP地址才…

DDOS版-超功能记事本 Ⅲ 8.8源码

DDOS版-超功能记事本 Ⅲ 8.8源码 下载地址&#xff1a;https://user.qzone.qq.com/512526231/main

ESB优势2019-架构师(六十二)

分布式数据数据库系统除了包含集中式数据库系统的模式结构外&#xff0c;还增加了几个模式级别&#xff0c;其中&#xff08;&#xff09;定义了分布式数据库中数据的整体逻辑结构、使得数据使用方便&#xff0c;如同没有分布一样。 分片模式全局外模式分布模式全局概念模式 …

jmeter疑难杂症

mac启动jmeter 进入jmeter文件夹下的bin目录 执行sh jmeter 如何线程与线程之间按照顺序执行 线程组内随机执行 选择线程组右键 >>> 添加 >>> 逻辑控制器 >>> 随机顺序控制器&#xff08;Random Order Controller&#xff09; 如何提取cookie的…

【MyBatis Plus】初识 MyBatis Plus,在 Spring Boot 项目中集成 MyBatis Plus,理解常用注解以及常见配置

文章目录 一、初识 MyBatis Plus1.1 MyBatis Plus 是什么1.2 MyBatis Plus 和 MyBatis 的区别 二、在 Spring Boot 项目中集成 MyBatis Plus2.1 环境准备2.2 引入 MyBatis Plus 依赖2.3 定义 Mapper2.4 测试 MyBatis Plus 的使用 三、MyBatis Plus 常用注解3.1 为什么需要注解3…

Android12之#pragma clang diagnostic ignored总结(一百六十八)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…