python3中的字典推导式

news/2025/1/8 16:02:13/

 一. 简介

前面简单学习了 python中的列表推导式,本文来简单学习一下 python中的字典推导式。

二. 字典推导式

python 中的字典推导式是 Python中创建字典的一种简洁方式。它允许你用一行代码来代替多行的 for循环和条件语句,从而快速地生成字典。

字典推导式的语法结构通常如下:

new_dict = {key_expression: value_expression for item in iterable}
或者
new_dict = {key_expression: value_expression for item in iterable if condition}
  • key_expression:是用于生成字典键的表达式。
  • value_expression: 是用于生成字典值的表达式。
  • item:是迭代变量,代表 iterable 中的每个元素。
  • iterable: 表示字典。
  • if condition: 是可选的条件判断,只有满足条件的元素才会被包含在新的字典中。

示例如下:

#!/usr/bin/env python3my_list = ["apple", "banana", "cherry", "grape", "orange"]
my_dict = {key: len(key) for key in my_list}
print(my_dict)

输出如下:

{'apple': 5, 'banana': 6, 'cherry': 6, 'grape': 5, 'orange': 6}

带 if condition 条件判断的字典推导式:

#!/usr/bin/env python3my_list = ["apple", "banana", "cherry", "grape", "orange"]
my_dict = {key: len(key) for key in my_list if len(key) >= 6}
print(my_dict)

输出如下:

{'banana': 6, 'cherry': 6, 'orange': 6}


http://www.ppmy.cn/news/1560627.html

相关文章

【LLM之评测】opencompass使用自定义接口与自定义数据集进行评测

🛠️ 安装指南 版本:0.3.7 下面提供了快速安装和数据集准备的步骤。 💻 环境搭建 强烈建议使用 conda 来管理您的 Python 环境。 创建虚拟环境 conda create --name opencompass python3.10 -y conda activate opencompass通过pip安装Ope…

React-Router 一站式攻略:从入门到精通,掌握路由搭建与权限管控

文章目录 一、前言二、安装使用 npm 安装(推荐)使用 yarn 安装 三、基础使用设置路由基础结构定义路由和组件关联直接在组件中定义路由定义单独一个路由表 创建导航链接 四、核心组件和功能BrowserRouter 和 HashRouterRoute 组件Link 组件Switch 组件 五…

《大话设计模式》解读09-建造者模式

上篇文章,介绍了《大话设计模式》的第12章——外观模式。 本篇,来介绍《大话设计模式》的第13章——建造者模式。并通过python代码实现示例代码的功能。 1 建造者模式 建造者模式(Builder):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。…

Next.js 多语言 (1) | 中间件(Middleware)的设置与应用

当我们开发一个支持多语言的 Next.js 网站时,常常需要解决以下问题: 用户首次访问时,应该显示哪个语言版本? 🤔 比如,用户访问 / 时,是展示 /en 还是 /de? SEO 是否能够抓取所有语言…

【JavaScript】变量-常量-数据类型-类型转换

目录 一、JavaScript 介绍 1. JavaScript (是什么?) 2. 作用(做什么?) 3. JavaScript的组成(有什么?) 3.1 ECMAScript: 3.2 Web APIs : 总结: 4. Jav…

算法复杂度O(1),O(n),O(logn),O(nlogn)意义|实现?

O(1) - 常数时间复杂度 在常数时间内完成操作的算法不会因为输入规模的变化而改变执行时间。 Java 例子: public class ConstantTimeExample {// 获取数组的第一个元素public static Integer getFirstElement(Integer[] array) {if (array.length 0) {return nu…

Maven项目集成SQL Server的完整教程:从驱动配置到封装优化

前言 在最近的系统对接过程中,由于对方团队不熟悉技术,最终选择直接提供 SQL Server 视图。本文详细记录了使用 Maven 集成 SQL Server 驱动的过程,以及从配置到查询的各个关键步骤,还包括注意事项与常见问题,希望对需…

Transformer算法实现IMDB文本分类任务和WMT14机器翻译任务

Transformer算法详解与PyTorch实现 目录 Transformer算法详解与PyTorch实现1. Transformer算法简介1.1 Transformer的优势1.2 Transformer的应用场景2. Transformer的核心组件2.1 自注意力机制(Self-Attention)2.2 多头注意力机制(Multi-Head Attention)2.3 位置编码(Posi…