我们之前讲过,在列表中是可以实现构建出新列表的,这种构造方法也同样适用于字典。有对字典不太明白的,可以回顾一下之前的文章。本篇所要讲的构造字典,有点像根据原有的基础上而产生一个新字典的情况,新字典是从原来的字典上经过代码的执行而有所变化。接下来我们就python3中构造字典的代码写法为大家带来讲解。
字典解析式,可以用字典以及列表等这些可以迭代的数据类型,来构造一个新的字典。
先看用字典构造字典
D1 = {'a': 1, 'b': 2, 'c': 3} D2 = {k: v*2 for (k, v) in D1.items()} print(D2) {'b': 4, 'a': 2, 'c': 6}
再举一个用列表构造字典的例子:
D = {c:c*4 for c in ['a', 'b', 'c', 'd']} print(D) {'d': 'dddd', 'a': 'aaaa', 'c': 'cccc', 'b': 'bbbb'}
拓展:字典常用方法
dict.clear() 删除字典内所有元素
dict.copy() 返回一个字典的浅复制
dict.fromkeys() 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
dict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值
dict.items() 以列表返回可遍历的(键, 值) 迭代对象
dict.keys() 以列表返回一个字典所有的键
dict.setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
dict.update(dict2) 把字典dict2的键/值对更新到dict里
dict.values() 以列表返回字典中的所有值
pop(key[,default]) 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
popitem() 随机返回并删除字典中的一对键和值。
以上就是构造字典的两个例子,通过本篇的学习我们知道不仅字典能够产生出新字典,用列表页同样可以。觉得有意思的小伙伴不要放过这次的机会,一起来练习一下吧。