我是靠谱客的博主 俭朴龙猫,最近开发中收集的这篇文章主要介绍python中基于mapping数据的字典dict生成,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在python中,字典的生成一般有三种方式:

方式一:空字典+添加操作

# 方法1:
a = {}
# 方法二
a = dict()
# 接着通过update等操作
a.update()

方式二:dict(**kwargs)方式

# 方法1
a = {"a":1, "b":2, "c":3}
# 方法2
a = dict(a=1, b=2, c=3)

方式三:dict(mapping)方式

这里mapping类型的数据是什么样?很容易联想到python中的map函数,即将某函数逐个作用于某可迭代对象中的各元素。

  • 一个简单的map示例
mapper1 = map(lambda x: x**2, range(1, 5))
# 返回一个map对象,这是一个迭代器对象
# 将其列表化,此时调用迭代器的__next__方法
list(mapper1)
# 返回[1, 4, 9, 16]
# 再次列表化时只会返回孔列表
list(mapper1)
# 返回[]
  • 一个更复杂的map示例
# 同样的,可以利用map作用于一个序列或者两个序列,返回一个(x,y)的元素对象
mapper2 = map(lambda x: (x, x**2), range(1, 5))
# 列表化
list(mapper2)
# 返回[(1, 1), (2, 4), (3, 9), (4, 16)]
# 因为有(x, y),所以可以考虑字典化。这也正是dict(mapping)中的mapping
mapper2 = map(lambda x: (x, x**2), range(1, 5))
# 必须重新定义,否则下面dict()时会返回空字典{}
dict(mapper2)
# 返回{1: 1, 2: 4, 3: 9, 4: 16}
  • zip等函数也同样能生成mapping对象
a = zip([1,2,3], [4,5,6])
list(a)
# 列表化,返回[(1, 4), (2, 5), (3, 6)]

总结: mapping类型的数据就是元素为(x,y)的列表,通过dict函数直接可生成以key为x, value为y的字典对象。

具体的交互式文件请戳这里。

最后

以上就是俭朴龙猫为你收集整理的python中基于mapping数据的字典dict生成的全部内容,希望文章能够帮你解决python中基于mapping数据的字典dict生成所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部