【Python 高频 API 速学 ⑤】

一、为什么把字典和集合放同一篇?

• 底层都是哈希表,API 设计高度对称。
• 日常任务无非「读-写-去重-集合运算」,这 5 个方法就能打穿。


二、三件套 & 二板斧一览

名称作用返回值原地?
dict.get(key, default)安全读取值或 default
dict.setdefault(k, v)读不到就写入值(新或旧)
dict.items()同时遍历 k-v可迭代视图
set.add(elem)把元素扔进去None
set.union(other)合并两个集合新集合

三、一行代码场景秀

  1. 统计词频,一行搞定缺省值
freq = {}
for w in words:freq[w] = freq.get(w, 0) + 1      # 或 freq.setdefault(w, 0)
  1. 构造「默认值是列表」的分组字典
groups = {}
for tag, obj in items:groups.setdefault(tag, []).append(obj)
  1. 同时遍历键值,不再手写 for k in d:
for k, v in user.items():print(k, v.upper())
  1. 去重并保持插入顺序(3.7+ 字典有序)
unique = list(dict.fromkeys(seq))
  1. 合并两个标签集合
all_tags = tag_set_a.union(tag_set_b)    # 或 tag_set_a | tag_set_b
  1. 实时黑名单过滤
blocked = {'spam', 'ad'}
msg = [w for w in tokens if w not in blocked]

四、mini 实战:5 行代码实现「购物车合并」

需求:把多份购物车 dict 合并,同商品数量相加。

from collections import Counter
cart1 = {'apple': 3, 'banana': 1}
cart2 = {'apple': 2, 'pear': 5}merged = Counter(cart1)
for k, v in cart2.items():merged[k] = merged.get(k, 0) + vprint(dict(merged))     # {'apple': 5, 'banana': 1, 'pear': 5}

核心动作拆解:
items() 遍历键值
get() 安全读取旧值
• 结果转回普通 dict(如需 JSON 序列化)


五、记忆口令

“字典三件套:get 读,setdefault 写,items 走; 集合两把刀:add 去重,union 合。”

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

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

相关文章

el-tree方法的整理

1.点击树的文字不要收缩仅点击图标的时候收缩 expand-on-click-node&#xff1a;是否在点击节点的时候展开或者收缩节点&#xff0c; 默认值为 true&#xff0c;如果为 false&#xff0c;则只有点箭头图标的时候才会展开或者收缩节点。<el-tree:expand-on-click-node"f…

支持多网络协议的测试工具(postman被无视版)

本文介绍接口调试工具&#xff0c;尽可能覆盖支持多种网络协议。写给一直写http接口&#xff0c;突然调试其他协议接口的开发 在后端开发中&#xff0c;接口调试工具的选择取决于网络协议类型和具体需求。以下是覆盖多种协议的主流工具分类推荐&#xff0c;附关键特点和场景建议…

太阳平近点角详解:概念、计算与应用

太阳平近点角详解&#xff1a;概念、计算与应用 1. 基本定义 **太阳平近点角&#xff08;Mean Anomaly&#xff0c;M&#xff09;**是描述天体&#xff08;如地球&#xff09;在其轨道上平均运动位置的角度参数。对于太阳系中的行星或卫星而言&#xff0c;它表示假设天体以恒定…

ruoyi关闭shiro校验,任何接口可以直接访问

文章目录1.找到ShiroConfig.java文件2.上述适用于get请求&#xff0c;post请求如何关闭&#xff1f;1.找到ShiroConfig.java文件 修改代码 // 原始代码 filterChainDefinitionMap.put("/**", "user,kickout,onlineSession,syncOnlineSession,csrfValidateFilt…

数据结构进阶 详谈红黑树

目录 1. 红⿊树的概念 红⿊树的规则 红⿊树如何确保最⻓路径不超过最短路径的2倍的&#xff1f; 红⿊树的效率&#xff1a; 2. 红⿊树的实现 红⿊树的结构 红⿊树的插⼊ 红⿊树树插⼊⼀个值的⼤概过程 情况1&#xff1a;变⾊ 情况2&#xff1a;单旋变⾊ 情况3&#…

【MySQL】MySQL去重查询详解

前言 在日常的数据库操作中&#xff0c;数据去重是一个非常常见的需求。无论是查询结果去重、数据清洗&#xff0c;还是统计分析&#xff0c;我们都需要掌握MySQL中的各种去重技术。本文将详细介绍MySQL中常用的去重关键字和操作方法&#xff0c;结合实际业务场景&#xff0c;帮…

Pinterest视觉营销自动化:亚矩阵云手机实例与多分辨率适配技术

Pinterest月活突破4.5亿的视觉经济时代&#xff0c;多分辨率适配与跨设备一致性成为品牌触达用户的核心挑战。传统营销因素材模糊、设备参数固化&#xff08;如固定分辨率1080P&#xff09;、行为机械化&#xff08;如定时批量上传&#xff09;&#xff0c;导致点击率低于行业均…

01数据结构-图的邻接矩阵和遍历

01数据结构-图的邻接矩阵和遍历1.图的遍历1.1深度优先遍历1.2广度优先搜索2.邻接矩阵的代码实现1.图的遍历 1.1深度优先遍历 深度优先搜索的过程类似于树的先序遍历&#xff0c;首先从例子中体会深度优先搜索&#xff0c;例如下图1是个无向图&#xff0c;采用深度优先算法遍历…

OpenAI发布的GPT-5 更新了哪些内容,它的核心能力有哪些?AI编码能力这么强,前端程序员何去何从?

目录**1. GPT-5的核心能力与技术突破****1.1 智能水平的质变****1.2 代码生成与优化****1.3 上下文处理与长文本能力****1.4 安全与可靠性改进****2. GPT-5的应用场景与案例****2.1 医疗领域****2.2 教育与学习****2.3 企业级应用****2.4 软件开发****3. 技术细节与创新****3.1…

【无标题】AI 赋能日常效率:实用案例与操作心得分享

大语言模型&#xff08;LLM&#xff09;早已不再是实验室里的专属品&#xff0c;而是逐渐渗透到我们工作与生活的方方面面。从繁琐的文档处理到复杂的信息筛选&#xff0c;从学习辅助到日常规划&#xff0c;AI 正以 "微生产力" 的形式重塑我们的效率边界。本文将分享…

Java-线程线程的创建方式

一.进程和线程进程&#xff1a;进程是资源分配的基本单位&#xff0c;每个进程都有自己独立的内存空间&#xff0c;可以看作是一个正在运行的程序实例线程&#xff1a;线程是CPU调度的基本单位&#xff0c;属于进程&#xff0c;一个进程可以包含多个线程。线程共享进程的内存空…

Electron 中 license-keys 的完整集成方案

secure-electron-license-keys 是一个专门为 Electron 应用设计的 npm 包&#xff0c;用于实现离线许可证密钥的创建、验证和管理&#xff0c;帮助开发者保护应用程序&#xff0c;确保只有拥有合法许可证的用户才能使用。以下是关于它的详细介绍&#xff1a; 在 Electron 应用中…

AI推理的“灵魂五问”:直面2025算力鸿沟与中国的破局之路

摘要&#xff1a;2025年&#xff0c;AI产业的重心已从训练全面转向推理&#xff0c;但一场严峻的“体验”危机正悄然上演。中美AI推理性能的巨大鸿沟&#xff0c;正让国内厂商面临用户流失的切肤之痛。本文以问答形式&#xff0c;直面当前中国AI产业在推理“最后一公里”上最尖…

2025 TexLive+VScode排版IEEE TGRS论文

2025 TexLiveVScode排版IEEE TGRS论文 本文主要内容&#xff1a; 软件安装 latex 排版 TRGS 论文期间遇到的问题 清晰图片导出 Latex公式、图、表、算法、参考文献的使用和引用 1. 前言 首先使用Overleaf网页版排版&#xff0c;但是后期排版图片太大&#xff0c;大小有限制&…

Redis数据组织方式

前言 Redis之所以高效&#xff0c;源自其优秀的架构设计。作为KV键值对存储数据库&#xff0c;数据的存储放在了内存中&#xff0c;KV键值对的组织方式更是其高效的原因之一。本文介绍其数据组织方式。 一、总体架构 在使用Redis时&#xff0c;服务端接收多个客户端的命令进行…

java组件安全vulhub靶场

>1--XStream1.打开靶场cd vulhub-master/xstream/CVE-2021-29505 docker up -d2.下载反序列化工具https://github.com/frohoff/ysoserial可以使用clone命令进行下载&#xff0c;也可以直接下载jar文件3.使用以下命令来开启脚本&#xff0c;将是反弹shell的语句进行base64编码…

UCMT部分复现

复现结果&#xff1a;88.03272&#xff0c;误差在接受范围内 补充信息 作者未解决后续报错问题&#xff0c;不建议复现

IntelliJ IDEA 新手全方位使用指南

摘要本文面向刚接触软件开发、使用 IntelliJ IDEA 的新手&#xff0c;详细介绍了 IDEA 的背景、版本区别、核心功能、运行原理、界面操作、项目管理、运行配置、以及 Git 版本控制基础。文章突出实用操作和理解流程&#xff0c;帮助新手快速熟悉IDEA环境&#xff0c;顺利完成项…

Python如何将图片转换为PDF格式

引言 在日常工作和学习中&#xff0c;我们经常需要将多张图片合并成一个PDF文件&#xff0c;以便于分享或打印。Python提供了多种库来实现这一需求&#xff0c;本文将详细介绍三种常用的方法&#xff1a;img2pdf库、Pillow库和PyMuPDF库&#xff0c;并附上完整的代码示例。 方法…

Python如何合并两个Excel文件

引言 在日常数据处理中&#xff0c;合并Excel文件是常见需求。Python提供了多种库&#xff08;如pandas、openpyxl&#xff09;来实现这一操作。本文将详细介绍两种主流方法&#xff0c;并附上完整代码示例&#xff0c;帮助您高效完成Excel合并任务。 方法一&#xff1a;使用pa…