使用序列生成字典

# 使用序列生成字典

摘录自《利用 Python 进行数据分析》第三版 3.1.4.1

有时可能需要两个序列 (list) 按元素配对生成字典。我们可能会这样写代码

Copy
mapping = {} for key, value in zip(key_list, value_list): mapping[key] = value

由于字典本质上是 2- 元组(含有 2 个元素的元组)的集合,字典是可以接受一个 2- 元组的列表作为参数的。所以以上代码可以简化为一行。

Copy
mapping = dict(zip(key_list, value_list))

zip 方法#

顺便一说,zip 方法(来自本书 3.1.3.3)。它可以将列表、元组或其他序列的元素配对,新建一个元组构成的列表。

image-20200118215303901

需要注意的是,zip 方法返回的是一个 zip 对象,需要使用 list 方法转换为列表。

它可以处理任意长度的序列,生成列表长度由最短的序列决定。

image-20200118215504276

它的最常使用的场景是同时遍历多个序列,有时候会和 enumerate 同时使用。

image-20200118215730044

posted @   Yingjing  阅读(504)  评论(0编辑  收藏  举报
编辑推荐:
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
阅读排行:
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!
· 用 C# 插值字符串处理器写一个 sscanf
点击右上角即可分享
微信分享提示
CONTENTS