Python 基础(十二):字典

news2024/11/22 5:06:59

在这里插入图片描述

❤️ 博客主页:水滴技术
🌸 订阅专栏:Python 入门核心技术
🚀 支持水滴:点赞👍 + 收藏⭐ + 留言💬

文章目录

  • 一、声明字典
    • 1.1 使用 {} 声明字典
    • 1.2 使用 dict 函数声明字典
    • 1.3 声明一个空的字典
  • 二、访问字典元素
    • 2.1 通过中括号 [] 获取值
    • 2.2 通过 get 方法获取值
  • 三、添加字典元素
    • 3.1 通过中括号 [] 添加元素
    • 3.2 通过 update 方法添加元素
  • 四、修改字典元素
    • 4.1 通过中括号 [] 修改元素
    • 4.2 通过 update 方法修改元素
  • 五、删除字典元素
    • 5.1 通过 del 函数删除元素
    • 5.2 通过 pop 方法弹出元素
    • 5.3 清空字典元素
  • 六、常用函数和方法
  • 系列文章
  • 热门专栏


大家好,我是水滴~~

本篇文章主要介绍 Python 中的字典 dict,主要内容包括:声明字典、访问字典元素、添加字典元素、修改字典元素、删除字典元素、常用函数和方法。

字典(dict)由一系列的“键值”对组成,要求 key 在同一字典中是唯一的、不可变的,而 value 可以是任意类型的对象。

一、声明字典

1.1 使用 {} 声明字典

字典与集合一样,可以使用大括号 {} 来声明,元素间使用逗号 , 隔开。不同的是,字典中的元素是一个键值对,键和值中间使用分号 : 隔开,例如:key: value

person = {"name": "水滴", "age": 26, "height": 182}  # 声明一个名为 person 的字典

print(type(person))  # 打印 person 字典的类型

输出结果:

<class 'dict'>

1.2 使用 dict 函数声明字典

可以使用 dict() 函数声明一个字典。

person = dict(name="水滴", age=26, height=182)  # 声明一个名为 person 的字典

print(type(person))  # 打印 person 字典的类型
print(person)  # 打印 person 字典

输出结果:

<class 'dict'>
{'name': '水滴', 'age': 26, 'height': 182}

1.3 声明一个空的字典

也可以使用 dict() 函数声明一个空的字典。

person = dict()  # 声明一个空的字典 person

print(type(person))  # 打印 person 字典的类型
print(person)  # 打印 person 字典

输出结果:

<class 'dict'>
{}

二、访问字典元素

可以通过字典中的 key 来获取 value,有下面两种方式。

2.1 通过中括号 [] 获取值

可以通过中括号 [] 获取值,中括号内为 key注意:如果 key 不存在的话,同样会抛出异常:KeyError

person = {"name": "水滴", "age": 26, "height": 182}  # 声明一个名为 person 的字典

print(person['name'])  # 根据键获取字典中的值
print(person['age'])  # 根据键获取字典中的值
print(person['height'])  # 根据键获取字典中的值

输出结果:

水滴
26
182

2.2 通过 get 方法获取值

还可以通过字典的 get() 方法来获取值。注意:该方法,如果 key 不存在,不会抛出异常,而是返回一个 None 值。

person = {"name": "水滴", "age": 26, "height": 182}  # 声明一个名为 person 的字典

print(person.get('name'))  # 根据键获取字典中的值
print(person.get('age'))  # 根据键获取字典中的值
print(person.get('height'))  # 根据键获取字典中的值
print(person.get('sex'))  # 根据键获取字典中的值

输出结果:

水滴
26
182
None

三、添加字典元素

3.1 通过中括号 [] 添加元素

使用中括号 [] 可以直接添加元素。

person = {"name": "水滴", "age": 26, "height": 182}  # 声明一个名为 person 的字典

person["sex"] = "男"  # 添加一个元素

print(person)  # 打印 person 字典

输出结果:

{'name': '水滴', 'age': 26, 'height': 182, 'sex': '男'}

3.2 通过 update 方法添加元素

可以通过字典的 update() 方法来添加元素。

person = {"name": "水滴", "age": 26, "height": 182}  # 声明一个名为 person 的字典

person.update({"sex": "男"})  # 添加一个元素

print(person)  # 打印 person 字典

输出结果:

{'name': '水滴', 'age': 26, 'height': 182, 'sex': '男'}

四、修改字典元素

修改的方式和添加的方式相同

4.1 通过中括号 [] 修改元素

也可以使用中括号 [] 来修改元素值,和添加元素方式相同。

person = {"name": "水滴", "age": 26, "height": 182, "sex": "男"}  # 声明一个名为 person 的字典

person["sex"] = "女"  # 修改字典元素值

print(person)  # 打印 person 字典

输出结果:

{'name': '水滴', 'age': 26, 'height': 182, 'sex': '女'}

4.2 通过 update 方法修改元素

也可以使用 update() 方法来修改元素值,和添加元素方式相同。

person = {"name": "水滴", "age": 26, "height": 182, "sex": "男"}  # 声明一个名为 person 的字典

person.update({"sex": "女"}) # 修改字典元素值

print(person)  # 打印 person 字典

输出结果:

{'name': '水滴', 'age': 26, 'height': 182, 'sex': '女'}

五、删除字典元素

5.1 通过 del 函数删除元素

可以使用 del() 函数来删除指定的元素。

person = {"name": "水滴", "age": 26, "height": 182, "sex": "男"}  # 声明一个名为 person 的字典

del[person["sex"]]  # 删除字典元素

print(person)  # 打印 person 字典

输出结果:

{'name': '水滴', 'age': 26, 'height': 182}

5.2 通过 pop 方法弹出元素

可以通过字典的 pop() 方法来弹出指定元素,该方法返回元素的 value

person = {"name": "水滴", "age": 26, "height": 182, "sex": "男"}  # 声明一个名为 person 的字典

sex = person.pop("sex")  # 弹出字典元素

print(sex)  # 打印弹出的字典元素
print(person)  # 打印 person 字典

输出结果:

{'name': '水滴', 'age': 26, 'height': 182}

5.3 清空字典元素

可以使用字典的 clear() 方法来清空字典中的元素。

person = {"name": "水滴", "age": 26, "height": 182, "sex": "男"}  # 声明一个名为 person 的字典

person.clear()  # 清空字典元素

print(person)  # 打印 person 字典

输出结果:

{}

六、常用函数和方法

  • len(dict):获取字典长度

  • dict.copy():复制字典


系列文章

🔥 Python 基础(一):初识 Python
🔥 Python 基础(二):搭建 Python 开发环境
🔥 Python 基础(三):Python 集成开发工具 IDLE
🔥 Python 基础(四):基础语法
🔥 Python 基础(五):变量与常量
🔥 Python 基础(六):基本数据类型
🔥 Python 基础(七):常用运算符
🔥 Python 基础(八):流程控制语句
🔥 Python 基础(九):列表
🔥 Python 基础(十):元组
🔥 Python 基础(十一):集合

热门专栏

👍 《Python入门核心技术》
👍 《IDEA 教程:从入门到精通》
👍 《Java 教程:从入门到精通》
👍 《MySQL 教程:从入门到精通》
👍 《大数据核心技术从入门到精通》

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

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

相关文章

【数据结构】AVLTree

1.AVL树的概念 二叉搜索树虽可以缩短查找的效率&#xff0c;但如果数据有序或接近有序二叉搜索树将退化为单支树&#xff0c;查找元素相当于在顺序表中搜索元素&#xff0c;效率低下。因此&#xff0c;两位俄罗斯的数G.M.Adelson-Velskii 和E.M.Landis在1962年 发明了一种解决上…

会话与会话技术(Session)

前言 Cookie将用户的信息保存在各自的浏览器中&#xff0c;并且可以在多次请求下实现数据的共享。但是如果当传递的信息较多时&#xff0c;Cookie技术会增大服务器程序处理的难度&#xff0c;因此&#xff0c;Servlet提供了另一种会话技术————Session&#xff0c;Session可…

跟李沐学AI——实用机器学习(入门版)

机器学习目录 2.1 探索性数据分析 2.2 数据清理 2.3 数据变换 2.4 特征工程 2.5 数据科学家的日常 Stanford University Practical machine learning 2.1 探索性数据分析 ​ 对目标的ftr数据进行处理&#xff0c;针对不同的信息做出不同的图形 输出数据集的行数和列数以及前十…

ArcGIS Pro地理空间数据处理完整工作流实训及python技术融合

GIS是利用电子计算机及其外部设备&#xff0c;采集、存储、分析和描述整个或部分地球表面与空间信息系统。简单地讲&#xff0c;它是在一定的地域内&#xff0c;将地理空间信息和 一些与该地域地理信息相关的属性信息结合起来&#xff0c;达到对地理和属性信息的综合管理。GIS的…

1、TI335x环境建立

记录裸机开发&#xff0c;TI A8系列处理器的AM335x过程&#xff0c;本次开发的是3352&#xff0c;在此基础上开发。 1、硬件准备&#xff1a; 已经测试调试ok的3352测试板&#xff0c;经过查看发现&#xff0c;am3352引出的下载接口是JTAG口&#xff0c;而我手里只有Jlink&…

Kubernetes---Pod调度、标签、配额、策略

静态pod 静态pod由user直接创建调用&#xff0c;不能迁移 由kebelet守护进程直接管理的pod&#xff0c;无需APIserver监管 kubelet监视每个静态pod 静态pod永远绑定到一个指定节点上的kubelet 静态pod spec不能引用其他API对象 静态pod配置路径/var/lib/kubelet/config.yaml里面…

CSS背景相关属性

一、背景颜色 属性名&#xff1a;background-color (bgc) 属性值&#xff1a;颜色取值&#xff1a;关键字&#xff0c;rgb表示法&#xff0c;rgba表示法&#xff0c;十六进制表示。 注&#xff1a; 背景颜色默认透明&#xff1a;rgba&#xff08;0&#xff0c;0&#xff0c…

C语言积锦

代码区&#xff1a;text 代码执行二进制码&#xff08;程序指令&#xff09; 具有共享、只读特性 数据区&#xff1a;1.初始化数据区data 2.未初始化数据区 bss 3.常量区 栈区&#xff1a;系统为每一个程序分配一个临时的空间 局部变量、函数信息、函数参数、数组。栈区大…

干货|Graphpad Prism也能做ERP图?So Easy!

Hello&#xff0c;大家好&#xff01; 这里是壹脑云科研圈&#xff0c;我是喵君姐姐~ 不知道你是否注意过这样一个现象。 在心理学大会报告的时候&#xff0c;专家经常会说一句话&#xff1a; 这个结果很漂亮&#xff01;&#xff01;&#xff01; 第一次听见的时候&#x…

K8s图形化管理工具Dasboard部署及使用

文章目录 一、Dashboard简介二、Dashboard部署安装三、配置Dashboard登入用户1、通过Token令牌登入2、通过kubeconfig文件登入 四、Dashboard创建容器 一、Dashboard简介 Kubernetes Dashboard是一个Web UI&#xff0c;用于管理Kubernetes集群中的应用程序和资源。它提供了一个…

使用wireshark抓包理解tcp协议和tls

首先下载安装wireshark 打开软件 1.选则自己连结的网络&#xff1b; 此时就会捕获的数据 2.加上端口过滤。 3.启动一个本地的http服务(这里采用的nodejs)&#xff1b; // server.js import koa from koa; const app new koa(); app.use(ctx > {ctx.body "hell…

托福听力专项 // Unit1 Listening for Main Ideas // Practice with Lectures // 共4篇

目录 Listening for Main Idea Lecture A a music class 单词 内容总结 Lecture B 单词 错题分析 Lecture C 单词 错题分析 Lecture D 单词 Listening for Main Idea Lecture A a music class 单词 evolve(v)to develop slowlyincorporate(v)to take in or includ…

Spring Boot使用(基础)

目录 1.Spring Boot是什么? 2.Spring Boot使用 2.1Spring目录介绍 2.2SpringBoot的使用 1.Spring Boot是什么? Spring Boot就是Spring脚手架,就是为了简化Spring开发而诞生的 Spring Boot的优点: 1.快速集成框架,提供了秒级继承各种框架,提供了启动添加依赖的功能 2.内…

修炼汇编语言第一章:汇编基础知识概述

目录 前言 一、汇编语言的组成 二&#xff1a;存储器 三&#xff1a;指令和数据 四&#xff1a;存储单元 五&#xff1a;CPU对存储器的读写 地址总线 控制总线 数据总线 前言 汇编语言是数据结构&#xff0c;操作系统&#xff0c;微机原理等重要课程的基础&#xff0…

【算法】冒泡排序

一.冒泡排序 主要思想&#xff1a; 反复交换相邻的元素&#xff0c;使较大的元素 逐渐冒泡到数组的末尾&#xff0c;从而实现排序的效果 实现过程&#xff1a; 1.遍历待排序数组&#xff0c;比较相邻的元素&#xff0c;如果前面的元素比后面的元素大&#xff0c; 就交换这两…

系统集成项目管理工程师 笔记(第八章:项目进度管理)

文章目录 8.1 规划项目进度管理 2938.1.1 规划项目进度管理的输入 2938.1.2 规划项目进度管理的工具与技术 2948.1.3 规划项目进度管理的输出 295 8.2 定义活动 2968.2.1 定义活动的输入 2968.2.2 定义活动的工具与技术 2968.2.3 定义活动的输出&#xff08;两清单、一属性&…

【深度学习】学习率与学习率衰减详解:torch.optim.lr_scheduler用法

【深度学习】学习率与学习率衰减详解&#xff1a;torch.optim.lr_scheduler用法 文章目录 【深度学习】学习率与学习率衰减详解&#xff1a;torch.optim.lr_scheduler用法1. 介绍1.1 学习率与学习率衰减 2. TensorFlow中的学习率衰减3. PyTorch中的学习率衰减2.1 optimizer 综述…

md/分类/信号领域/数字信号处理及MATLAB实现/频率调制(FM).md

文章目录 本文链接https://zh.wikipedia.org/wiki/频率调制用Python模拟FM/PM调制解调过程波形变化频率调制我的 本文链接 打死他 调频&#xff08;英语&#xff1a;Frequency Modulation&#xff0c;缩写&#xff1a;FM&#xff09;是一种以载波的瞬时频率变化来表示信息的方…

Java文件操作必备技能,10个小技巧让你快速掌握!

前言 在我们日常的开发中&#xff0c;文件操作是一个非常重要的主题。文件读写、文件复制、任意位置读写、缓存等技巧都是我们必须要掌握的。在这篇文章中&#xff0c;我将给你们介绍 10 个实用的文件操作技巧。 使用 try-with-resources 语句处理文件 IO 流&#xff0c;确保在…

C++Vector类详解

目录 1.Vector介绍 2.Vector的常见使用 2.1 vector构造函数 2.2 vector iterator使用 2.3 vector空间增长问题 2.4 vector增删改查 2.5 vector迭代器失效问题 3.Vector深度剖析及模拟实现 3.1 模拟实现&#xff08;可跳过&#xff09; 3.2 不使用memcpy剖析 1.Vector介绍 ve…