Python:成对打印

时间:2014-08-03 11:55:31

标签: python list

这里的第一次海报。我已经在Python上遇到过这个问题了。

假设我有这个清单:

items = ['6', 'Dogs', '5', 'Cats', '2', 'Birds']

每个元素都是一个字符串。

打印简单方法是什么:

6 Dogs
5 Cats
2 Birds

等等?我知道字典和元组以及诸如此类的东西,但为了实现这些,我将不得不改变我的其余代码,我最好还是要避免。那么如何打印如上所示的列表呢?

迄今为止我得到的最好的是

6 Dogs 5 Cats 2 Birds

1 个答案:

答案 0 :(得分:0)

您可以获得两个列表,一个从头开始,跳过每个下一个元素,另一个从第二个元素开始,并跳过其他所有元素。然后你只需要zip(同时从两个列表中迭代项目)来自两个列表的数据并打印它们,就像这样

items = ['6', 'Dogs', '5', 'Cats', '2', 'Birds']
for item1, item2 in zip(items[::2], items[1::2]):
    print item1, item2

<强>输出

6 Dogs
5 Cats
2 Birds

如果您打印跳过的列表,

print items[::2]
# ['6', '5', '2']
print items[1::2]
# ['Dogs', 'Cats', 'Birds']

现在,zip从我们提供的所有列表中一次获取一个项目,并在迭代期间使用for循环提供给我们。