您现在的位置是: 网站首页 >Python Python

Python模块---zip打包元素为元组

admin2019年1月24日 16:24 Python 263人已围观

# zip打包元素为元组 `zip()` 函数用于将可迭代对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象。 如果各个可迭代对象的元素个数不一致,则返回的对象长度与最短的可迭代对象相同。 利用 `*` 号操作符,与zip相反,进行解压。 Python3中返回的是一个对象,如果想要得到列表,可以用 `list()` 函数进行转换。 ## 打包 - 从参数中的多个迭代器取元素组合成一个新的迭代器; - **返回**返回一个zip对象,其内部元素为元组;可以转化为列表或元组; - **传入参数:**元组、列表、字典等迭代器。 - **当zip()函数中只有一个参数时**`zip(iterable)`从iterable中依次取一个元组,组成一个元组。 ```python a = [1, 2, 3] b1 = [4, 5, 6] b2 = [4, 5, 6, 7, 8] a1 = zip(a) print(a1, list(a1)) # <zip object at 0x0000021D11AAC788> [(1,), (2,), (3,)] ab1 = zip(a, b1) print(ab1, list(ab1)) # <zip object at 0x000002952D1FB848> [(1, 4), (2, 5), (3, 6)] ab2 = zip(a, b2) # 元素数量不同,按少的计算 print(ab2, list(ab2)) # <zip object at 0x00000247020FB948> [(1, 4), (2, 5), (3, 6)] ``` ## 解包 `*zip()`函数是`zip()`函数的逆过程,将zip对象变成原先组合前的数据。 ```python z1 = zip(*zip(a, b1)) # 解压 print(z1, list(z1)) # <zip object at 0x000001EC4464C988> [(1, 2, 3), (4, 5, 6)] z = [(1, 2, 3), ('a', 'b', 'c'), (4, 5, 6)] print(list(zip(*z))) # [(1, 'a', 4), (2, 'b', 5), (3, 'c', 6)] ```

很赞哦! (0)

文章交流

  • emoji
0人参与,0条评论

当前用户

未登录,点击   登录

站点信息

  • 建站时间:网站已运行726天
  • 系统信息:Linux
  • 后台程序:Python: 3.6.6
  • 网站框架:Django: 2.2.12
  • 文章统计:235 篇
  • 文章评论:44 条
  • 腾讯分析网站概况-腾讯分析
  • 百度统计网站概况-百度统计
  • 公众号:微信扫描二维码,关注我们
  • QQ群:QQ加群,下载网站的学习源码
返回
顶部
标题 换行 登录
网站