Python教程

Python 3 内置函数 - `zip()`函数

本文主要是介绍Python 3 内置函数 - `zip()`函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Python 3 内置函数 - zip()函数

0. zip()函数

将对象中对应的元素打包成一个元组,然后返回由这些元组组成的对象。

  • 可以用 list() 转换来输出列表。
  • 利用 * 号操作符,可以将元组解压为列表。

1. 使用方法

>>> help(zip)
# output:
Help on class zip in module builtins:

class zip(object)
 |  zip(*iterables) --> A zip object yielding tuples until an input is exhausted.
 |  
 |     ## 使用方法
 |     >>> list(zip('abcdefg', range(3), range(4)))
 |     [('a', 0, 0), ('b', 1, 1), ('c', 2, 2)]
 |  
 |  The zip object yields n-length tuples, where n is the number of iterables
 |  passed as positional arguments to zip().  The i-th element in every tuple
 |  comes from the i-th iterable argument to zip().  This continues until the
 |  shortest argument is exhausted.
 |  
 |  Methods defined here:
 |  
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |  
 |  __iter__(self, /)
 |      Implement iter(self).
 |  
 |  __next__(self, /)
 |      Implement next(self).
 |  
 |  __reduce__(...)
 |      Return state information for pickling.
 |  
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |  
 |  __new__(*args, **kwargs) from builtins.type
 |      Create and return a new object.  See help(type) for accurate signature.

2. 使用示例

2.1. zip() 压缩

>>> a = ['a','b','c']
>>> b = [1, 2, 3]
>>> x = zip(a, b)
>>> x, list(x)
# output:
(<zip at 0x7f58142bcd00>, [('a', 1), ('b', 2), ('c', 3)])

2.1. zip(*) 解压

利用 * 号操作符,可以将元组解压为列表。

>>> x = [('a', 1), ('b', 2), ('c', 3)]
>>> a, b = zip(*x)
>>> a, b
# output:
(('a', 'b', 'c'), (1, 2, 3))
这篇关于Python 3 内置函数 - `zip()`函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!