Python系统学习笔记14(续13:高阶函数补充:zip/enumerate、collections模块namedtuple/deque/defaultdict/Counter)
2019-03-14 10:22
453 查看
zip
- 把两个可迭代内容生成一个可迭代的tuple元素类型组成的内容
# zip 案例 l1 = [ 1,2,3,4,5] l2 = [11,22,33,44,55] z = zip(l1, l2) print(type(z)) print(z) for i in z: print(i)
enumerate
- 跟zip功能比较像
- 对可迭代对象里的每一元素,配上一个索引,然后索引和内容构成tuple类型
# enumerate案例1 l1 = [11,22,33,44,55] em = enumerate(l1) l2 = [i for i in em] print(l2)
- 自定义索引开始位置
em = enumerate(l1, start=100) l2 = [ i for i in em] print(l2)
collections模块
- namedtuple
- deque
namedtuple
- tuple类型
- 是一个可命名的tuple
import collections Point = collections.namedtuple("Point", ['x', 'y']) p = Point(11, 22) print(p.x) print(p[0])
Circle = collections.namedtuple("Circle", ['x', 'y', 'r']) c = Circle(100, 150, 50) print(c) print(type(c)) # 想检测以下namedtuple到底属于谁的子类 isinstance(c, tuple)
deque
- 比较方便的解决了频繁删除插入带来的效率问题
from collections import deque q = deque(['a', 'b', 'c']) print(q) q.append("d") print(q) q.appendleft('x') print(q)
defaultdict
- 当直接读取dict不存在的属性时,直接返回默认值
d1 = {"one":1, "two":2, "three":3} print(d1['one']) print(d1['four']) #这句会报错
from collections import defaultdict # lambda表达式,直接返回字符串 func = lambda: "刘大拿" d2 = defaultdict(func) d2["one"] = 1 d2["two"] = 2 print(d2['one']) print(d2['four'])
Counter
- 统计字符串个数
from collections import Counter # 为什么下面结果不把abcdefgabced.....作为键值,而是以其中每一个字母作为键值 # 需要括号里内容为可迭代 c = Counter("abcdefgabcdeabcdabcaba") print(c)
s = ["liudana", "love", "love", "love", "love", "wangxiaona"] c = Counter(s) print(c)
相关文章推荐
- Python学习笔记014——迭代工具函数 内置函数zip()
- Python3 学习笔记13_函数的参数_20180305
- Python学习笔记---理解zip()函数
- IPython下目录的操作-魔力函数(cd pwd bookmark dhist )- 千月的python linux 系统管理指南学习笔记(7)
- 【Python学习笔记】-Python之zip()函数
- Python 创建、读取和写入文件以及yield关键字- 千月的python linux 系统管理指南学习笔记(14)
- IPython下执行shell命令-魔力函数(alias store rehash)- 千月的python linux 系统管理指南学习笔记(6)
- IPython 下的信息收集-魔力函数(page pinfo who等)- 千月的python linux 系统管理指南学习笔记(9)
- python学习笔记-(13)python中的函数参数传递
- Python中使用函数 - 千月的python linux 系统管理指南学习笔记(4)
- Python入门学习笔记————13(继承,多态,类相关函数)
- zip函数编写--python学习笔记30
- #python学习笔记#zip函数
- Python学习笔记七:内置函数补充,函数作用域,闭包及递归
- PHP学习笔记14——图书管理系统
- python 系统学习笔记(二)---string
- MySQL学习笔记19:系统信息函数
- python 系统学习笔记(十四)---排序
- Python 学习笔记(一)语句,变量,函数
- python学习笔记8-函数整理