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

python字典的基本操作详解

Python字典是一种数据结构,它存储的是键值对(key-value pair)。在Python中,字典用于存储和组织数据,并且提供了快速查找和访问数据的方法。

以下是一些Python字典的基本操作:

创建字典:

# 创建一个空的字典
my_dict = {}# 创建一个包含键值对的字典
my_dict = {"key1": "value1","key2": "value2","key3": "value3"
}

添加键值对:

my_dict["key4"] = "value4"

获取值:

value = my_dict["key1"]

修改值:

my_dict["key1"] = "new value"

删除键值对:

del my_dict["key1"]

检查键是否在字典中:

if "key2" in my_dict:print("Key exists in dictionary")

获取字典的长度:

length = len(my_dict)

字典的遍历:

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

字典的合并:

dict1 = {"a": 1, "b": 2}
dict2 = {"b": 3, "c": 4}
merged_dict = {**dict1, **dict2}

字典的复制:

dict1 = {"a": 1, "b": 2}
dict2 = dict1.copy()

字典的排序:

dict1 = {"b": 2, "a": 1}
sorted_dict = dict(sorted(dict1.items()))

从字典中获取键值对:

items = dict1.items()

使用字典推导式创建字典:

nums = [1, 2, 3, 4, 5]
squares = {num: num**2 for num in nums}

清空字典:

dict1.clear()

使用get方法获取字典中的值,如果键不存在则返回默认值:

value = dict1.get("key", default_value)

字典中的键值对迭代:

dict1 = {"a": 1, "b": 2, "c": 3}
for key, value in dict1.items():print(f"Key: {key}, Value: {value}")

使用keys方法获取字典中的键:

keys = dict1.keys()
  1. 使用values方法获取字典中的值:
values = dict1.values()

使用items方法获取字典中的键值对:

items = dict1.items()

字典的嵌套:

dict1 = {"a": {"b": 1, "c": 2}, "d": {"e": 3, "f": 4}}

字典的递归:

def recursive_dict(dictionary, key):if isinstance(dictionary, dict):for k, v in dictionary.items():if k == key:return velif isinstance(v, dict):result = recursive_dict(v, key)if result is not None:return resultreturn None

字典中的键大小写转换:

dict1 = {"a": 1, "b": 2}
dict2 = {k.lower(): v for k, v in dict1.items()}

字典中的值大小写转换:

dict1 = {"a": "Hello", "b": "World"}
dict2 = {k: v.lower() for k, v in dict1.items()}

字典中的键值对反转:

dict1 = {"a": 1, "b": 2}
dict2 = {v: k for k, v in dict1.items()}

从列表中创建字典:

list1 = [("a", 1), ("b", 2), ("c", 3)]
dict1 = dict(list1)

从字典中提取键:

dict1 = {"a": 1, "b": 2, "c": 3}
keys = dict1.keys()

从字典中提取值:

dict1 = {"a": 1, "b": 2, "c": 3}
values = dict1.values()

字典中的键值对拆分:

dict1 = {"a": 1, "b": 2, "c": 3}
keys = [k for k in dict1]
values = [v for v in dict1.values()]

字典中的键值对合并:

keys = ["a", "b", "c"]
values = [1, 2, 3]
dict1 = dict(zip(keys, values))

字典中的值取最大值:

dict1 = {"a": 1, "b": 2, "c": 3}
max_value = max(dict1.values())

字典中的值取最小值:

dict1 = {"a": 1, "b": 2, "c": 3}
min_value = min(dict1.values())

字典的并集:

dict1 = {"a": 1, "b": 2}
dict2 = {"b": 3, "c": 4}
merged_dict = {**dict1, **dict2}

相关文章:

python字典的基本操作详解

Python字典是一种数据结构,它存储的是键值对(key-value pair)。在Python中,字典用于存储和组织数据,并且提供了快速查找和访问数据的方法。 以下是一些Python字典的基本操作: 创建字典: # 创…...

[ CSS ] 内容超出容器后 以...省略

内容超出容器后 以…省略 当前效果 代码 <template><div class"box">有志者&#xff0c;事竟成&#xff0c;破釜沉舟&#xff0c;百二秦关终属楚; 有心人&#xff0c;天不负&#xff0c;卧薪尝胆&#xff0c;三千越甲可吞吴</div> </templa…...

Java远程连接本地开源分布式搜索引擎ElasticSearch

文章目录 前言1. Windows 安装 Cpolar2. 创建Elasticsearch公网连接地址3. 远程连接Elasticsearch4. 设置固定二级子域名 前言 简单几步,结合Cpolar内网穿透工具实现Java远程连接操作本地Elasticsearch。 什么是elasticsearch&#xff1f;一个开源的分布式搜索引擎&#xff0…...

递归回溯剪枝-子集

LCR 079. 子集 - 力扣&#xff08;LeetCode&#xff09; 方法一 1. 决策树&#xff1a;对于决策树&#xff0c;思考的角度不同&#xff0c;画出的决策树也会不同&#xff0c;这道题可以从两个角度来画决策树。 2. 考虑全局变量的使用&#xff1a; 使用全局变量 List<List&…...

VC++、MFC中操作excel时,Rang和Rangs的区别是什么?

Rang 参考微软说明 作用 表示一个单元格、一行、一列、一个包含单个或若干连续单元格区域的选定单元格范围&#xff0c;或者一个三维区域。 说明 Range 的默认成员将不包含参数的调用转发至 Value 属性 如&#xff0c;someRange someOtherRange 等效于 someRange.Value …...

使用Rust开发小游戏

本文是对 使用 Rust 开发一个微型游戏【已完结】[1]的学习与记录. cargo new flappy 在Cargo.toml的[dependencies]下方增加: bracket-lib "~0.8.7" main.rs中: use bracket_lib::prelude::*;struct State {}impl GameState for State { fn tick(&mut self,…...

笔记二十一、使用路由search进行传递参数

21.1 父组件设置路由参数 <NavLink to{classify?param_A${this.state.name}&param_B${this.state.age}} className{this.activeStyle}>classify</NavLink> import React from "react"; import {NavLink, Outlet} from "react-router-dom"…...

python多线程和多进程

1.多线程 线程是程序执行的最小单位&#xff0c;一个进程至少有一个线程。 提高并发性。通过线程可方便有效地实现并发性。进程可创建多个线程来执行同一程序的不同部分。 进程之间不能共享内存&#xff0c;但线程之间共享内存非常容易。 Python 常用的多线程库有threading 和…...

VMware虚拟机网络配置详解

vmware为我们提供了三种网络工作模式&#xff0c;它们分别是&#xff1a;Bridged&#xff08;桥接模式&#xff09;、NAT&#xff08;网络地址转换模式&#xff09;、Host-Only&#xff08;仅主机模式&#xff09; 打开vmware虚拟机&#xff0c;我们可以在选项栏的“编辑”下的…...

VUE语法--img图片不显示/img的src动态赋值图片显示

1、问题概述 常见情景1&#xff1a;在VUE中使用img显示图片的时候&#xff0c;通过传参的方式传入图片的路径和名称&#xff0c;VUE不加载本地资源而是通过http://localhost:8080/...的地址去加载网络资源&#xff0c;从而出现了图片无法显示的情况。 常见情景2&#xff1a;针…...

springboot+vue智能企业设备管理系统05k50

智能设备管理系统主要是为了提高工作人员的工作效率和更方便快捷的满足用户&#xff0c;更好存储所有数据信息及快速方便的检索功能&#xff0c;对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性&#xff0c;遵循开发的系统优化的原则&#xf…...

C++中的new、operator new与placement new

new operator new operator是我们常用的new。 new 和 delete 是用来在 堆上申请和释放空间的 &#xff0c;是 C 定义的 关键字&#xff0c;和 sizeof 一样。 实际 new / delete 和 malloc / free 最大的区别是&#xff0c;前者对于 自定义类型 除了可以开辟空间&#xff0c;…...

ElasticSearch之cat anomaly detectors API

curl -X GET "https://localhost:9200/_cat/ml/anomaly_detectors?vtrue&pretty" --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPHQBEs5*lo7F9"执行结果输出如下&#xff1a; curl -X GET "https://localhost:9200/_cat/ml/ano…...

Luminar Neo1.16.0(ai智能图像处理)

Luminar Neo是一款ai智能图像编辑软件&#xff0c;它专注于使用人工智能技术来实现对照片的快速、高效和创造性的编辑。 具体来说&#xff0c;Luminar Neo可以自动移除景观或旅行照片中令人分心的元素&#xff0c;例如电话线、电线杆等&#xff0c;从而增强照片的整体质量。同…...

ElasticSearch之cat aliases API

执行aliases命令&#xff0c;如下&#xff1a; curl -X GET "https://localhost:9200/_cat/aliases?pretty&vtrue" --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPHQBEs5*lo7F9"执行结果输出如下&#xff1a; alias index …...

bash编程 数组和for循环的应用

bash编程 数组和for循环的应用 1、问题背景2、bash 定义数组3、for循环遍历输出数组所有元素4、编写bash脚本输出每个端口是否在监听状态 1、问题背景 linux服务器开机后&#xff0c;需要检查一组端口是否在监听&#xff0c;以便判断这些端口对应的服务是否在运行。可以考虑使…...

Python基础:标准库概览

1. 标准库介绍 Python 标准库非常庞大&#xff0c;所提供的组件涉及范围十分广泛&#xff0c;正如以下内容目录所显示的。这个库包含了多个内置模块 (以 C 编写)&#xff0c;Python 程序员必须依靠它们来实现系统级功能&#xff0c;例如文件 I/O&#xff0c;此外还有大量以 Pyt…...

C#,《小白学程序》第三课:类class,类的数组及类数组的排序

类class把数值与功能巧妙的进行了结合&#xff0c;是编程技术的主要进步。 下面的程序你可以确立 分数 与 姓名 之间关系&#xff0c;并排序。 1 文本格式 /// <summary> /// 同学信息类 /// </summary> public class Classmate { /// <summary> /…...

建筑结构健康监测系统和传统人工监测的区别

在繁华的城市里&#xff0c;建筑结构作为城市生命线的重要一环&#xff0c;其安全与稳定对城市的运转和居民的生活至关重要。为了更好地守护建筑结构的健康&#xff0c;WITBEE万宾自主研发建筑结构健康监测系统让建筑安全&#xff0c;在上一个台阶。 WITBEE万宾建筑结构健康监测…...

二 使用GPIO的复用功能 利用USART 实现printf()

参考这篇&#xff1a; STM32串口通信详解 1. 关于USART USART ( universal synchronous / asynchronous receiver /transmitter) 是一种串行通讯协议 , 允许设备通过串行端口进行数据传输&#xff0c; USART 能够以同步或者异步的方式进行工作&#xff0c;在实际的运用中&…...

AcousticSense AI部署指南:基于Gradio的音频流派分析工作站搭建

AcousticSense AI部署指南&#xff1a;基于Gradio的音频流派分析工作站搭建 1. 引言&#xff1a;让AI“看见”音乐&#xff0c;从频谱中解读流派密码 你有没有想过&#xff0c;AI不仅能“听”音乐&#xff0c;还能“看”音乐&#xff1f;AcousticSense AI就是这样一个神奇的工…...

Qwen3.5-4B-Claude-Opus部署教程:模型服务与前端分离部署的跨域配置方案

Qwen3.5-4B-Claude-Opus部署教程&#xff1a;模型服务与前端分离部署的跨域配置方案 1. 模型概述 Qwen3.5-4B-Claude-4.6-Opus-Reasoning-Distilled-GGUF 是一个基于 Qwen3.5-4B 的推理蒸馏模型&#xff0c;重点强化了结构化分析、分步骤回答、代码与逻辑类问题的处理能力。该…...

我在 Cursor 里接入了 Claude Code,三种方式实测告诉你哪个最好用

我在 Cursor 里接入了 Claude Code&#xff0c;三种方式实测告诉你哪个最好用 Cursor 用了快一年&#xff0c;日常写代码够用。但遇到跨文件重构、从零搭架构这类活&#xff0c;它的 Agent 模式经常半途而废——改了三个文件&#xff0c;漏掉第四个的类型定义&#xff0c;然后整…...

从一次内部渗透测试看低代码平台安全:Jeecg-Boot JimuReport漏洞的攻防思考

从红队视角拆解低代码平台安全&#xff1a;Jeecg-Boot JimuReport漏洞攻防全景 低代码平台正在重塑企业数字化建设的效率边界&#xff0c;但安全团队往往在"敏捷交付"的狂欢中后知后觉。去年某金融客户的内部红蓝对抗中&#xff0c;攻击方仅用36分钟就通过Jeecg-Boot…...

AEUX终极指南:如何快速将Sketch/Figma设计稿转换为After Effects动画

AEUX终极指南&#xff1a;如何快速将Sketch/Figma设计稿转换为After Effects动画 【免费下载链接】AEUX Editable After Effects layers from Sketch artboards 项目地址: https://gitcode.com/gh_mirrors/ae/AEUX AEUX是一款革命性的设计到动效转换工具&#xff0c;能够…...

OpenHarmony LiteOS-M Shell 命令开发指南

概述 本文档详细介绍如何在 OpenHarmony LiteOS-M 内核中添加自定义 shell 命令&#xff0c;以 version、reboot、poweroff 命令为例进行说明。 目录结构 kernel/liteos_m/components/shell/ ├── include/shcmd.h # 命令声明头文件 ├── src/base/shcmd.c …...

终极指南:如何利用Flurl构建高效.NET HTTP请求与URL管理

终极指南&#xff1a;如何利用Flurl构建高效.NET HTTP请求与URL管理 【免费下载链接】Flurl Fluent URL builder and testable HTTP client for .NET 项目地址: https://gitcode.com/gh_mirrors/fl/Flurl Flurl是一个为.NET开发者打造的强大开源库&#xff0c;它提供了流…...

gridDim 最好是sm 的整数 吗

这个问题问得非常到位&#xff0c;而且是一个**“看起来应该对&#xff0c;但其实不完全对”的经典误区**。我帮你把结论和工程直觉都讲清楚。一、先给结论&#xff08;直接说清楚&#xff09;❌ gridDim 不需要是 SM 的整数倍 ✅ 但gridDim 至少要“远大于 SM 数量”&#xff…...

MCP Server与Client的实战配置指南:从零搭建到功能测试

1. MCP技术入门&#xff1a;从协议理解到生态优势 第一次接触MCP这个概念时&#xff0c;我也是一头雾水。直到真正用起来才发现&#xff0c;这简直就是开发者与AI模型之间的"万能翻译器"。Model Context Protocol&#xff08;模型上下文协议&#xff09;的核心价值在…...

AIAgent如何48小时内完成三甲医院级影像初筛?——2026奇点大会披露的FDA认证推理引擎架构

第一章&#xff1a;AIAgent如何48小时内完成三甲医院级影像初筛&#xff1f;——2026奇点大会披露的FDA认证推理引擎架构 2026奇点智能技术大会(https://ml-summit.org) 在2026奇点大会上&#xff0c;DeepMed Labs首次公开其通过FDA 510(k)路径认证的AIAgent推理引擎v3.2——…...