显示真实输出,而不是存储地址

时间:2015-09-07 03:20:57

标签: python ipython

当我在IPython QTConsole中运行代码时:

- >拉链([2,4],[3,1])

我期望它输出[[2,3],[4,1]],但它显示

- >

,就像存储地址一样。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

不幸的是,你不能。

原因是zip并不总是将序列作为参数。序列具有已知的顺序,可以根据需要迭代多次。有时拉链可以获得生成器,实际上不知道订单,甚至预先知道订单中有多少项。

然而,

在您的具体情况下,您可以

list(zip([2,4],[3,1]))

获得你想要的东西。如果你只想对压缩的东西进行一次迭代,你不应该在它上面调用list,因为那时你已经做了很多不必要的工作。迭代压缩的东西更有效率。