小编Arj*_*jee的帖子

Python zip对象只能使用一次.这是为什么?

我想学习zip类的功能.我写了这个非常简单的例子.

>>> names = ['name1','name2','name3']
>>> ages = ['age1','age2','age3']
>>> print(zip(names, ages))
<zip object at 0x03DB18F0>
>>> zipped = zip(names, ages)
for i in zipped:
    type(i)
    print(i)
Run Code Online (Sandbox Code Playgroud)

和输出(如预期的那样) -

<class 'tuple'>
('name1', 'age1')
<class 'tuple'>
('name2', 'age2')
<class 'tuple'>
('name3', 'age3')
Run Code Online (Sandbox Code Playgroud)

但是,如果我这样写,请立即在此行后:

for i in zipped:
    print(i)
Run Code Online (Sandbox Code Playgroud)

它编译但没有打印任何东西!

要重新检查,我再次这样做了 -

>>> zipped = zip(names, ages)
>>> for i in zipped:
    print(i)
('name1', 'age1')
('name2', 'age2')
('name3', 'age3')
Run Code Online (Sandbox Code Playgroud)

这次打印正确.但是在做解压缩时 -

>>> names2, ages2 = zip(*zipped)
Traceback (most recent call last):
  File …
Run Code Online (Sandbox Code Playgroud)

python iterator

0
推荐指数
1
解决办法
1232
查看次数

标签 统计

iterator ×1

python ×1