zoukankan      html  css  js  c++  java
  • Python zip函数及用法

    zip() 函数是 Python 内置函数之一,它可以将多个序列(列表、元组、字典、集合、字符串以及 range() 区间构成的列表)“压缩”成一个 zip 对象。所谓“压缩”,其实就是将这些序列中对应位置的元素重新组合,生成一个个新的元组。

    和 Python 3.x 版本不同,Python 2.x 版本中的 zip() 函数会直接返回列表,而不是返回 zip 对象。但是,返回的列表或者 zip 对象,其包含的元素(都是元组)是相同的。

    zip() 函数的语法格式为:

    zip(iterable, ...)

    其中 iterable,... 表示多个列表、元组、字典、集合、字符串,甚至还可以为 range() 区间。https://www.furuihua.cn/pingtai/

    下面程序演示了 zip() 函数的基本用法:

    1. my_list = [11,12,13]
    2. my_tuple = (21,22,23)
    3. print([x for x in zip(my_list,my_tuple)])
    4. my_dic = {31:2,32:4,33:5}
    5. my_set = {41,42,43,44}
    6. print([x for x in zip(my_dic)])
    7. my_pychar = "python"
    8. my_shechar = "shell"
    9. print([x for x in zip(my_pychar,my_shechar)])

    程序执行结果为:

    [(11, 21), (12, 22), (13, 23)]
    [(31,), (32,), (33,)]
    [('p', 's'), ('y', 'h'), ('t', 'e'), ('h', 'l'), ('o', 'l')]

    如果读者分析以上的程序和相应的输出结果不难发现,在使用 zip() 函数“压缩”多个序列时,它会分别取各序列中第 1 个元素、第 2 个元素、... 第 n 个元素,各自组成新的元组。需要注意的是,当多个序列中元素个数不一致时,会以最短的序列为准进行压缩。

    另外,对于 zip() 函数返回的 zip 对象,既可以像上面程序那样,通过遍历提取其存储的元组,也可以向下面程序这样,通过调用 list() 函数将 zip() 对象强制转换成列表:

    1. my_list = [11,12,13]
    2. my_tuple = (21,22,23)
    3. print(list(zip(my_list,my_tuple)))

    程序执行结果为:

    [(11, 21), (12, 22), (13, 23)]

  • 相关阅读:
    读胶料温度代码
    干掉win10自带的不给力的应用(转自https://jingyan.baidu.com/article/08b6a591b7398514a8092238.html)
    安装SQL提示重启电脑失败,解决办法
    几种加解密方法:AES、DES、SHA数据加密
    SQL数据库添加新账号,只操作指定数据库
    jQuery中attr()、prop()、data()用法及区别
    jquery.cookie() 的使用(原)
    功能强大的web打印控件lodop的使用
    Win+R命令大全
    Vue
  • 原文地址:https://www.cnblogs.com/furuihua/p/12691927.html
Copyright © 2011-2022 走看看