您的位置:首页 > 脚本大全 > > 正文

python 组合数据类型(详解Python3 对象组合zip和回退方式*zip)

更多 时间:2021-10-06 01:38:33 类别:脚本大全 浏览量:1174

python 组合数据类型

详解Python3 对象组合zip和回退方式*zip

zip即将多个可迭代对象组合为一个可迭代的对象,每次组合时都取出对应顺序的对象元素组合为元组,直到最少的对象中元素全部被组合,剩余的其他对象中未被组合的元素将被舍弃。

  • ?
  • 1
  • 2
  • 3
  • 4
  • keys = ['one', 'two', 'three']
  • values = [1, 2, 3]
  • d = zip(keys, values)
  • print(list(d))
  • 示例结果:

    [('one', 1), ('two', 2), ('three', 3)]

    可以看到我们由 zip 模拟了一个类似字典的一一对应的元组迭代对象,并将其转化为 list 类型查看,当然我们可以利用获取迭代对象生成真正的键值字典:

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • keys = ['one', 'two', 'three']
  • values = [1, 2, 3]
  • d = zip(keys, values)
  • d = {}
  • for key, value in d:
  •   print(key, value)
  •   d[key] = value
  • print(d)
  • 示例结果:

    one 1
    two 2
    three 3
    {'one': 1, 'two': 2, 'three': 3}

    我们可以利用for循环迭代赋值给字典完成对应的键值映射,在python3中我们还可以用一句话就可以完成 d = dict(zip(keys,values)) .

    *zip

    当我们想回退为迭代器组合之前的状态时,我们可以利用 * “解压”现在“压缩”过的新的迭代对象

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • keys = ['one', 'two', 'three', 'four']
  • values = [1, 2, 3]
  • d = zip(keys, values)
  • older = zip(*d)
  • print(list(older))
  • “解压”结果:

    [('one', 'two', 'three'), (1, 2, 3)]

    ps:python3:zip()和*zip()函数

    描述

    • zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组
    • *zip() 和zip()配合使用,具体看下面示例

    showing code by screenshot ~~

    1. zip()

    python 组合数据类型(详解Python3 对象组合zip和回退方式*zip)

    2. *zip()

    python 组合数据类型(详解Python3 对象组合zip和回退方式*zip)

    总结

    以上所述是小编给大家介绍的python3 对象组合zip()和回退方式*zip,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对开心学习网网站的支持!

    如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

    原文链接:https://juejin.im/post/5cdacb9ee51d453a7d63b726

    您可能感兴趣