• python-两列表对应元素相加形成新列表 zip


    zip()函数:

    zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

    如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

    zip 方法在 Python 2 和 Python 3 中的不同:在 Python 3.x 中为了减少内存,zip() 返回的是一个对象。如需展示列表,需手动 list() 转换。
    
    如果需要了解 Pyhton3 的应用,可以参考 Python3 zip()。
    

    两列表对应元素相加形成新列表:

    实例:

    >>>a = [1, 2]
    >>>b = [3, 4]
    #列表生成式
    >>>c = [i + j for i, j in zip(a, b)]
      [4, 6]
    

    打包为元组的列表:

    >>>a = [1,2,3]
    >>> b = [4,5,6]
    >>> c = [4,5,6,7,8]
    
    >>> zipped = list(zip(a,b))     # 打包为元组的列表
    [(1, 4), (2, 5), (3, 6)]
    
    >>> list(zip(a,c))              # 元素个数与最短的列表一致
    [(1, 4), (2, 5), (3, 6)]
    
    >>>print(*zipped)
    (1, 4) (2, 5) (3, 6)
    >>> list(zip(*zipped))          # 与 zip 相反,*zipped 可理解为解压,返回二维矩阵式
    [(1, 2, 3), (4, 5, 6)]
    

    将两个列表转换为字典:

    现有2个列表
    
    keys = ['name', 'age', 'food']
    values = ['Monty', 42, 'spam']
    需要将转换为字典,结果如下:
    
    a_dict = {'name' : 'Monty', 'age' : 42, 'food' : 'spam'}
    那么最简单的方法是什么呢?
    

    完整代码

    keys = ['name', 'age', 'food']
    values = ['Monty', 42, 'spam']
    a_dict = dict(zip(keys, values))
    print(a_dict) #{'name': 'Monty', 'age': 42, 'food': 'spam'}
    
  • 相关阅读:
    VS快速格式化代码
    EasyUI——实现展示后台数据代码
    并行开发
    EF---结合三层方法的应用
    EF—主键冲突解决办法
    SVN——配置和安装
    谈谈MVC模式
    JDK/Java里的设计模式
    设计模式的设计原则和精神
    举例说明你使用的设计模式
  • 原文地址:https://www.cnblogs.com/hanfe1/p/12107088.html
Copyright © 2020-2023  润新知