当前位置: 首页 > 面试题库 >

遍历Python列表中的项目对

何向荣
2023-03-14
问题内容

是否可以在Python中以以下方式迭代列表(将此代码作为伪代码进行处理)?

a = [5, 7, 11, 4, 5]
for v, w in a:
    print [v, w]

它应该产生

[5, 7]
[7, 11]
[11, 4]
[4, 5]

问题答案:

itertools食谱:

from itertools import tee

def pairwise(iterable):
    "s -> (s0,s1), (s1,s2), (s2, s3), ..."
    a, b = tee(iterable)
    next(b, None)
    return zip(a, b)

for v, w in pairwise(a):
    ...


 类似资料:
  • 问题内容: 我有一个这样的清单清单。 现在,我需要遍历上面的列表并输出一个字符串列表,如下所示(原始列表中没有数字) 问题答案: 准确执行您指定的操作的最简单解决方案是: 这基本上等效于迭代版本: 但是,这并不是遍历具有任意维数的多维列表的通用方法,因为嵌套列表推导/嵌套的for循环可能很难看。但是,对于2或3维列表,您应该放心。 如果您确实决定需要平整3个以上的尺寸,我建议实现一个递归遍历函数,

  • 问题内容: 给出清单 我想遍历所有成对的连续列表项,即 我想以更紧凑的方式做到这一点,例如 有没有办法使用内置的Python迭代器来做到这一点?我确定该模块应该有解决方案,但我无法弄清楚。 问题答案: 只需使用拉链 如建议的那样,你可能会考虑在很长的列表中使用此函数,而这些列表又不想创建新列表。

  • 问题内容: 我创建了一个二维数组,如: 打印此列表将给出输出: 其中每个列表项都是“行,列”格式的字符串 现在给出此列表,我想按顺序迭代它: 依次遍历第一列和第二列,依此类推。我该如何循环? 此问题与纯python列表有关,而标记为相同的问题与numpy数组有关。他们明显不同 问题答案: 使用和。就像是:

  • 问题内容: 迭代效率与CPython中相同项目列表的迭代效率一样吗? 问题答案: 这取决于您使用的Python版本。在Python 2中,创建一个新列表,这会花费一些额外的时间并消耗更多的内存。另一方面,一旦创建了列表,它就是一个列表,因此在完成列表创建的开销之后,应该具有相同的性能特征。 在Python 3中,创建视图对象而不是列表,并且我预计创建和迭代将比Python 2中更快,因为无需复制任

  • 问题内容: 具体来说,我有两个字符串列表,我想将它们组合成一个字符串,其中每一行是列表中的下两个字符串,以空格分隔: 我想要一个函数Combine_to_lines()返回: 我承认我已经解决了这个问题,所以我将发布答案。但是也许其他人有更好的表现,或者看到我的缺点。 更新 :我在上面简化了我的示例。在我的实际问题中,以更复杂的方式设置行的格式,这要求解压缩从zip()返回的元组。但是对于mhaw

  • 问题内容: 我发现我正在编写许多Makefile,可以使用 n个 元组列表清除它们。但是我找不到任何正确(干净)地进行此操作的方法。到目前为止,我只能使用 $(shell …) 和 tr , sed 或其他非Makefile标准。 例如,我想这样做: 有没有一种很好的方法来迭代Makefile中的 n个 元组列表?谢谢! 问题答案: Makefile本质上是声明性的,因此我认为make本身不能提供