Python collections模块使用方法详解
Python  /  管理员 发布于 7年前   156
一、collections模块
1.函数namedtuple
(1)作用:tuple类型,是一个可命名的tuple
(2)格式:collections(列表名称,列表)
(3)返回值:一个含有列表的类
(4)例子:
import collections# help(collections.namedtuple)Point = collections.namedtuple("Point",['x','y'])p = Point(15,45)print(p.x+p.y)print(p[0]+p[1])#支持索引等#应用举例Circle = collections.namedtuple('Circle',['x','y','r'])circle = Circle(14,15,45)propotion = circle[2]*circle[2]*3.141596print("圆的面积为",propotion)
2.函数deque
(1)作用:比较方便的解决了频繁删除插入带来的效率问题
(2)格式:deque(列表)
(3)返回值:列表
(4)例子:
q = collections.deque(['a','b','c'])print(q)q.append('sada')q.appendleft('left')print(q)help(collections.deque)
3.函数:defaultdict
(1)作用:当读取dict不存在的属性时,会返回默认值
(2)格式:collections.defaultdict(函数)
(3)返回值:返回括号里的函数
(4)例子:
我们定义一个字典,但是当我们打印一个不存在的索引的时候,会报错,因此我们在定义一个函数,当索引不存在的时候让他返回这个函数。
这个类似于我们使用:
try...except...这个关键字的用法
d1 = {"one":1,"two":2,"three":3}print("four")#上面的会报错,下面的就会返回函数,告诉我们错了func = lambda:"错了"d2 = collections.defaultdict(func)d2['one']=1d2['two']=2print(d2['four'])
4.函数Couter
(1)作用:统计字符串的个数
(2)格式:collections.Counter()
(3)返回值:可迭代内容的字典的Counter类
(4)例子:
list1 = collections.Counter("aaabbbccc")print(list1)list2 = collections.Counter(['abc','sad','sad','abc','abc','ffds'])print(list2)
(5)总结:括号内的内容必须是可迭代的才可以进行统计,这里这两个例子不一样,第一个统计的时字符串的字母个数,第二个统计的列表中的元素重复个数,符合我们对可迭代的理解。
二、源码
d21_1_collections_module
地址:https://github.com/ruigege66/Python_learning/blob/master/d21_1_collections_module
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号