zoukankan      html  css  js  c++  java
  • Python内置函数zip map filter的使用

    Python内置函数zip map filter的使用

    并行遍历zip

    zip会取得一个或多个序理为参数,然后返回元组的列表,将这些序列中的并排的元素配成对

    L1=[1,2,3,4]
    L2=[5,6,7,8]
    L3=zip(L1,L2)
    print(L3,type(L3))
    
    <zip object at 0x7feb81b17f08> <class 'zip'>
    

    zip在python3中是一个可迭代对象,我们可以将其包含在list调用中以例一次性显示所有结果

    list(L3)
    
    [(1, 5), (2, 6), (3, 7), (4, 8)]
    

    搭配for循环使用,可以运行并行迭代

    for (x,y) in zip(L1,L2):
        print(x,y,'--',x+y)
    
    1 5 -- 6
    2 6 -- 8
    3 7 -- 10
    4 8 -- 12
    

    使用zip构造字典

    keys=['spam','eggs','toast']
    val=[1,3,5]
    

    通过zip将keys 和 val列表中的元素串联起来,再把zip过的键/值列表传给内置的dict构造函数

    D3=dict(zip(keys,val))
    print(D3)
    
    {'spam': 1, 'eggs': 3, 'toast': 5}
    

    map

    遍历序列,对序列中的每个元素进行操作,最终获取新的序列,格式:map(func,list)
    将list中每个元素作用于函数func

    map_obj=map(abs,(-10,0,9))
    print(list(map_obj))
    
    [10, 0, 9]
    

    filter

    对序列中的元素进行筛选,最终获取符合条件的序列,常和lambda函数一起使用,格式filter(func,list)
    将list中的元素依次作用于func,返回满足条件的元素

    filter_obj=filter(lambda x:x<3 ,L1)
    print(list(filter_obj))
    
    [1, 2]
  • 相关阅读:
    codeforces 616B Dinner with Emma
    codeforces 616A Comparing Two Long Integers
    codeforces 615C Running Track
    codeforces 612C Replace To Make Regular Bracket Sequence
    codeforces 612B HDD is Outdated Technology
    重写父类中的成员属性
    子类继承父类
    访问修饰符
    方法的参数
    实例化类
  • 原文地址:https://www.cnblogs.com/kaerxifa/p/13094408.html
Copyright © 2011-2022 走看看