• 技术文章 >常见问题 >Python常见问题

    如何将python列表压缩

    silencementsilencement2019-12-13 10:01:21原创3050

    zip() 函数可以把两个列表“压缩”成一个 zip 对象(可迭代对象),这样就可以使用一个循环并行遍历两个列表。为了测试 zip() 函数的功能,我们可以先在交互式解释器中“试验”一下该函数的功能。

    >>> a = ['a','b','c']
    >>> b = [1, 2, 3]
    >>> [x for x in zip(a,b)]
    [('a', 1), ('b', 2), ('c', 3)]

    从上面的测试结果来看,zip() 函数压缩得到的可迭代对象所包含的元素是由原列表元素组成的元组。

    推荐学习《python教程

    Pthon 2.x 的 zip() 函数直接返回列表,而不是返回 zip 对象。Python 2.x 的 zip() 函数返回的列表所包含的元素和 Python 3.x 的 zip() 返回的 zip 对象所包含的元素相同。

    例如:

    >>> c = [0.1 ,0.2]
    >>> [x for x in zip(a,c)]
    [('a', 0.1), ('b', 0.2)]

    从上面代码可以看出,如果 zip() 函数压缩的两个列表长度不相等,那么 zip() 函数将以长度更短的列表为准。

    zip() 函数不仅可以压缩两个列表,也可以压缩多个列表。比如下面试验同时压缩 3 个列表:

    >>> [x for x in zip(a, b, c)]
    [('a', 1, 0.1), ('b', 2, 0.2)]

    从上面代码可以看出,如果使用 zip() 函数压缩 N 个列表,那么 zip() 函数返回的可迭代对象的元素就是长度为 N 的元组。

    专题推荐:zip
    上一篇:php和python学哪个好 下一篇:Python写入SQL乱码怎么解决

    相关文章推荐

    • 如何判断列表中不包含某个元素• python怎么遍历列表

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网