Python学习 —— 常用高阶函数

版权声明:转载注明出处 https://blog.csdn.net/qq_19428987/article/details/87019117
  • zip
    把两个可迭代的内容生成一个可迭代的tuple元素类型组成的内容
    name=["A","B","C"]
    source=[50,70,90]
    grade=zip(name,source)
    for i in grade:
    	print(i)
    >>>('A', 50)
    ('B', 70)
    ('C', 90)
    
  • enumerate(可迭代对象,startindex=0)
    功能和zip功能类似,对可迭代对象的每一个元素配上一个索引,然后索引和内容构成tuple类型(索引默认从0开始)
    name=["A","B","C"]
    em =enumerate(name,start=1)
    out=[i for i in em]
    print(out)
    >>>[(1, 'A'), (2, 'B'), (3, 'C')]
    

collections模块

  • namedtuple (类似C#中定义类)

    import collections
    Vector2=collections.namedtuple("Vector2",['x','y'])
    point=Vector2(2,5)
    print(point)
    >>>Vector2(x=2, y=5)
    
  • dequene
    比较方便的解决频繁的删除和插入带来的效率问题

    from collections import deque
    q=deque(['a','b','c'])
    q.append('d')
    print(q)
    q.appendleft('x')
    print(q)
    >>>deque(['a', 'b', 'c', 'd'])
    deque(['x', 'a', 'b', 'c', 'd'])
    
  • defaultdict
    当在字典中访问不存在的键值时,会返回默认值

    from collections import defaultdict
    func=lambda :"Null"
    d=defaultdict(func)
    d["one"]=1
    print(d["two"])
    >>>Null
    

猜你喜欢

转载自blog.csdn.net/qq_19428987/article/details/87019117