当前位置: 首页 > article >正文

Python 字典:快速掌握高效的数据存储方式

文章目录

      • 一、什么是字典?
        • 字典的定义
      • 二、字典的基本操作
        • 1. 访问字典的值
        • 2. 修改字典中的值
        • 3. 添加新的键值对
        • 4. 删除键值对
        • 5. 获取字典长度
      • 三、字典的遍历
        • 1. 遍历键
        • 2. 遍历值
        • 3. 遍历键值对
      • 四、字典的常用方法
        • 1. `keys()`:获取所有键
        • 2. `values()`:获取所有值
        • 3. `items()`:获取所有键值对
        • 4. `update()`:更新字典
        • 5. 清空字典
      • 五、字典的实际应用场景
        • 1. 统计字符出现次数
        • 2. 存储和检索用户信息
        • 3. 构建词典翻译工具
      • 六、字典与 JSON 数据的关系
        • 字典转 JSON
        • JSON 转字典
      • 七、总结

字典(Dictionary)是 Python 中一种非常重要的数据结构,用于存储键值对(key-value pairs)。字典的查找速度快,常用于存储和快速检索数据。本篇文章将详细介绍字典的基本用法、常见操作以及应用场景。


一、什么是字典?

字典是由键值对组成的可变数据结构,用于高效地存储和查找数据。字典中的键是唯一的,值可以是任意类型。

字典的定义

使用花括号 {} 表示字典,键和值之间用冒号 : 分隔,多个键值对之间用逗号 , 分隔。

# 定义一个简单的字典
student = {"name": "Alice","age": 20,"major": "Computer Science"
}

二、字典的基本操作

1. 访问字典的值

通过键访问字典中的值。如果键不存在,会引发 KeyError

print(student["name"])  # 输出:Alice
print(student["age"])   # 输出:20

可以使用 get() 方法避免键不存在时报错,并提供默认值:

print(student.get("gender", "未指定"))  # 输出:未指定
2. 修改字典中的值

直接通过键赋值即可修改字典中的值:

student["age"] = 21
print(student)  # 输出:{'name': 'Alice', 'age': 21, 'major': 'Computer Science'}
3. 添加新的键值对

在字典中添加新的键值对:

student["gender"] = "Female"
print(student)  # 输出:{'name':

相关文章:

Python 字典:快速掌握高效的数据存储方式

文章目录 一、什么是字典?字典的定义二、字典的基本操作1. 访问字典的值2. 修改字典中的值3. 添加新的键值对4. 删除键值对5. 获取字典长度三、字典的遍历1. 遍历键2. 遍历值3. 遍历键值对四、字典的常用方法1. `keys()`:获取所有键2. `values()`:获取所有值3. `items()`:获…...

Baklib探索内容中台的核心价值与实施策略

内容概要 在数字化转型的背景下,内容中台逐渐成为企业数字化策略中的关键组成部分。内容中台是一个集成的内容管理体系,旨在打破信息孤岛,使内容能够在各个业务部门和平台之间高效流通。这种管理体系不仅能够提升内容的生产效率,…...

网络安全攻防实战:从基础防护到高级对抗

📝个人主页🌹:一ge科研小菜鸡-CSDN博客 🌹🌹期待您的关注 🌹🌹 引言 在信息化时代,网络安全已经成为企业、政府和个人必须重视的问题。从数据泄露到勒索软件攻击,每一次…...

论文阅读(十三):复杂表型关联的贝叶斯、基于系统的多层次分析:从解释到决策

1.论文链接:Bayesian, Systems-based, Multilevel Analysis of Associations for Complex Phenotypes: from Interpretation to Decision 摘要: 遗传关联研究(GAS)报告的结果相对稀缺,促使许多研究方向。尽管关联概念…...

13.zookeeper开机自启动配置

要在Linux(RHEL7.7)系统中设置zookeeper开机自启动,可以创建一个系统服务单元文件。以下是为详细配置部署,假设你已经安装了zookeeper并且可以通过zkServer.sh命令启动它。 1.进入/lib/systemd/system目录 命令: cd /lib/systemd/system [root@rhel77 system]# cd /lib/…...

“““【运用 R 语言里的“predict”函数针对 Cox 模型展开新数据的预测以及推理。】“““

主题与背景 本文主要介绍了如何在R语言中使用predict函数对已拟合的Cox比例风险模型进行新数据的预测和推理。Cox模型是一种常用的生存分析方法,用于评估多个因素对事件发生时间的影响。文章通过具体的代码示例展示了如何使用predict函数的不同参数来获取生存概率和…...

Oracle Primavera P6 最新版 v24.12 更新 1/2

目录 引言 P6 PPM 更新内容 1. 在提交更新基线前预览调整 2. 快速轻松地取消链接活动 3. 选择是否从 XER 文件导入责任经理 4. 提高全局变更报告的清晰度 5. 将整个分层代码值路径导出到 CPP 6. 里程碑活动支持所有关系类型 6. 时间表批准 7. 性能改进 8. 安装改进 …...

AI大模型开发原理篇-2:语言模型雏形之词袋模型

基本概念 词袋模型(Bag of Words,简称 BOW)是自然语言处理和信息检索等领域中一种简单而常用的文本表示方法,它将文本看作是一组单词的集合,并忽略文本中的语法、词序等信息,仅关注每个词的出现频率。 文本…...

JavaWeb学习-SpringBotWeb开发入门(HTTP协议)

(一)SpringBotWeb开发步骤 (1)创建springboot工程,并勾选开发相关依赖 (2)定义HelloController类,添加方法hello,并添加注解 (3)运行测试 (二)HTTP入门概述 创建请求页面 package com.itheima.demo3; /*请求处理类,加上注解标识为请求处理类*/import org.spr…...

网站结构优化:加速搜索引擎收录的关键

本文来自:百万收录网 原文链接:https://www.baiwanshoulu.com/9.html 网站结构优化对于加速搜索引擎收录至关重要。以下是一些关键策略,旨在通过优化网站结构来提高搜索引擎的抓取效率和收录速度: 一、合理规划网站架构 采用扁…...

本地部署deepseek模型步骤

文章目录 0.deepseek简介1.安装ollama软件2.配置合适的deepseek模型3.安装chatbox可视化 0.deepseek简介 DeepSeek 是一家专注于人工智能技术研发的公司,致力于打造高性能、低成本的 AI 模型,其目标是让 AI 技术更加普惠,让更多人能够用上强…...

【deepseek】deepseek-r1本地部署-第二步:huggingface.co替换为hf-mirror.com国内镜像

一、背景 由于国际镜像国内无法直接访问,会导致搜索模型时加载失败,如下: 因此需将国际地址替换为国内镜像地址。 二、操作 1、使用vscode打开下载路径 2、全局地址替换 关键字 huggingface.co 替换为 hf-mirror.com 注意:务…...

sunrays-framework配置重构

文章目录 1.common-log4j2-starter1.目录结构2.Log4j2Properties.java 新增两个属性3.Log4j2AutoConfiguration.java 条件注入LogAspect4.ApplicationEnvironmentPreparedListener.java 从Log4j2Properties.java中定义的配置读取信息 2.common-minio-starter1.MinioProperties.…...

Spark Streaming的背压机制的原理与实现代码及分析

Spark Streaming的背压机制是一种根据JobScheduler反馈的作业执行信息来动态调整Receiver数据接收率的机制。 在Spark 1.5.0及以上版本中,可以通过设置spark.streaming.backpressure.enabled为true来启用背压机制。当启用背压机制时,Spark Streaming会自…...

刷题记录 贪心算法-2:455. 分发饼干

题目:455. 分发饼干 难度:简单 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸&a…...

360大数据面试题及参考答案

数据清理有哪些方法? 数据清理是指发现并纠正数据文件中可识别的错误,包括检查数据一致性,处理无效值和缺失值等。常见的数据清理方法有以下几种: 去重处理:数据中可能存在重复的记录,这不仅会占用存储空间,还可能影响分析结果。通过对比每条记录的关键属性,若所有关键…...

【大模型】Ollama+AnythingLLM搭建RAG大模型私有知识库

文章目录 一、AnythingLLM简介二、搭建本地智能知识库2.1 安装Ollama2.2 安装AnythingLLM 参考资料 一、AnythingLLM简介 AnythingLLM是由Mintplex Labs Inc.开发的一个全栈应用程序,是一款高效、可定制、开源的企业级文档聊天机器人解决方案。AnythingLLM能够将任…...

深入MapReduce——从MRv1到Yarn

引入 我们前面篇章有提到,和MapReduce的论文不太一样。在Hadoop1.0实现里,每一个MapReduce的任务并没有一个独立的master进程,而是直接让调度系统承担了所有的worker 的master 的角色,这就是Hadoop1.0里的 JobTracker。在Hadoop1…...

arkui-x 前端布局编码模板

build() {Column() {Row() {// 上侧页面布局实现}// 下侧页面布局实现}.width(Const.THOUSANDTH_1000).height(Const.THOUSANDTH_1000).justifyContent(FlexAlign.SpaceBetween).backgroundImage($r(app.media.background_xxx)).backgroundImageSize(ImageSize.Cover).backgrou…...

代理模式 -- 学习笔记

代理模式学习笔记 什么是代理? 代理是一种设计模式,用户可以通过代理操作,而真正去进行处理的是我们的目标对象,代理可以在方法增强(如:记录日志,添加事务,监控等) 拿一…...

sem_init的概念和使用案例

sem_init 是 POSIX 线程库中用于初始化未命名信号量&#xff08;unnamed semaphore&#xff09;的函数&#xff0c;常用于多线程或多进程间的同步。以下是其概念和使用案例的详细说明&#xff1a; 概念 函数原型&#xff1a; #include <semaphore.h>int sem_init(sem_t …...

JVM_类的加载、链接、初始化、卸载、主动使用、被动使用

①. 说说类加载分几步&#xff1f; ①. 按照Java虚拟机规范,从class文件到加载到内存中的类,到类卸载出内存为止,它的整个生命周期包括如下7个阶段: 第一过程的加载(loading)也称为装载验证、准备、解析3个部分统称为链接(Linking)在Java中数据类型分为基本数据类型和引用数据…...

ProfibusDP主机与从机交互

ProfibusDP 主机SD2索要数据下发&#xff1a;68 08 F7 68 01 02 03 21 05 06 07 08 1C 1668&#xff1a;SD2 08&#xff1a;LE F7&#xff1a;LEr 68&#xff1a;SD2 01:目的地址 02&#xff1a;源地址 03:FC_CYCLIC_DATA_EXCHANGE功能码 21&#xff1a;数据地址 05,06,07,08&a…...

Java设计模式:结构型模式→组合模式

Java 组合模式详解 1. 定义 组合模式&#xff08;Composite Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许将对象组合成树形结构以表示“部分-整体”的层次。组合模式使得客户端能够以统一的方式对待单个对象和对象集合的一致性&#xff0c;有助于处理树形结构…...

【福州市AOI小区面】shp数据学校大厦商场等占地范围面数据内容测评

AOI城区小区面样图和数据范围查看&#xff1a; — 字段里面有name字段。分类比较多tpye&#xff1a;每个值代表一个类型。比如字段type中1549代表小区住宅&#xff0c;1563代表学校。小区、学校等占地面积范围数据 —— 小区范围占地面积面数据shp格式 无偏移坐标&#xff0c;只…...

【Python实现机器遗忘算法】复现2023年TNNLS期刊算法UNSIR

【Python实现机器遗忘算法】复现2023年TNNLS期刊算法UNSIR 1 算法原理 Tarun A K, Chundawat V S, Mandal M, et al. Fast yet effective machine unlearning[J]. IEEE Transactions on Neural Networks and Learning Systems, 2023. 本文提出了一种名为 UNSIR&#xff08;Un…...

基于SpringBoot的阳光幼儿园管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…...

【逻辑学导论第15版】A. 推理

识别下列语段中的前提与结论。有些前提确实支持结论&#xff0c;有些并不支持。请注意&#xff0c;前提可能直接或间接地支持结论&#xff0c;而简单的语段也可能包含不止一个论证。 例题&#xff1a; 1.管理得当的民兵组织对于一个自由国家的安全是必需的&#xff0c;因而人民…...

【开源免费】基于SpringBoot+Vue.JS景区民宿预约系统(JAVA毕业设计)

本文项目编号 T 162 &#xff0c;文末自助获取源码 \color{red}{T162&#xff0c;文末自助获取源码} T162&#xff0c;文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…...

c++ map/multimap容器 学习笔记

1 map的基本概念 简介&#xff1a; map中所有的元素都是pair pair中第一个元素是key&#xff08;键&#xff09;&#xff0c;第二个元素是value&#xff08;值&#xff09; 所有元素都会根据元素的键值自动排序。本质&#xff1a; map/multimap 属于关联式容器&#xff0c;底…...