zoukankan      html  css  js  c++  java
  • python zip函数小结

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

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

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

    如果传的是这样,数组里放的是字符串,将拆分字符串

    >>> s=['12a','123','234']
    >>> zip(*s)
    [('1', '1', '2'), ('2', '2', '3'), ('a', '3', '4')]

    单个字符串:

      >>> s=['1','1','2']
      >>> zip(*s)
      [('1', '1', '2')]

    下面这样会出错

    >>> l=[111,12,13]
    >>> zip(*l)
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: zip argument #1 must support iteration
  • 相关阅读:
    HashMap深度解析(二)(转)
    HashMap深度解析(一)(转)
    GeoHash核心原理解析(转)
    spring boot 策略模式实践
    Java中CAS详解(转)
    springMVC请求流程详解(转)
    7 vi 编辑器
    Linux 命令行快捷键
    Java
    3 Eclipse 查看不了源码
  • 原文地址:https://www.cnblogs.com/facexiaoxi/p/8670910.html
Copyright © 2011-2022 走看看