python collection库的使用

本文介绍了Python collection库中的一些实用工具,如ChainMap用于合并多个字典,defaultdict提供默认值功能,以及namedtuple创建命名元组。通过实例展示了它们在简化代码和提升效率上的作用。
摘要由CSDN通过智能技术生成

补充知识,各种表达式的效果:
tasks = [
1,
2,
3
]

a = (i for i in tasks) #这种情况生成的是生产器,可以用来迭代
b = [i for i in tasks] #生成的是列表
c = {i for i in tasks} #这种情况下生成的是set (很意外吧)
d = {i:1 for i in tasks} #这种情况下生成的是字典

print(type(a))
print(type(b))
print(type©)
print(type(d))

运行结果:
<class ‘generator’>
<class ‘list’>
<class ‘set’>
<class ‘dict’>

其实在我们的工作开发过程中是有很多的时候出现字典列表,或者字典多层嵌套,而此时我们就是在遍历,代码写的冗长,而现在其实我们是有别的办法的。
ChainMap
ChainMap主要是将多个字典组合在一起,然后进行操作

In [6]: a = {“x”:1, “z”:3}
In [7]: b = {“y”:2, “z”:4}
In [8]: c = ChainMap(a, b)
In [9]: c
Out[9]: ChainMap({‘z’: 3, ‘x’: 1}, {‘z’: 4, ‘y’: 2})

n [10]: c[“z”]
Out[10]: 3
In [11]: c[“z”] = 4
#只会读写第一个字典里面的值

In [12]: c<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值