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

一次遍历多个列表的最佳方法是什么?

尚俊楠
2023-03-14
问题内容

假设我有两个或两个以上相同长度的列表。遍历它们的好方法是什么?

ab是列表。

 for i, ele in enumerate(a):
    print ele, b[i]

要么

for i in range(len(a)):
   print a[i], b[i]

还是我缺少任何变体?

使用一个相对于另一个有什么特别的优势吗?


问题答案:

通常的方法是使用zip()

for x, y in zip(a, b):
    # x is from a, y is from b

这将停止两个iterables时较短ab耗尽。另外值得注意的是:(itertools.izip()仅适用于Python
2)和itertools.izip_longest()(适用itertools.zip_longest()于Python
3)。



 类似资料:
  • 问题内容: 目前,我正在使用类似: 我对这种方法不是很满意,因为它会创建大量数组(可以包含一本书)。 有没有更好的解决方案来迭代a的行? 问题答案: 您可以使用: 并使用方法:

  • 问题内容: 复制列表的最佳方法是什么?我知道以下方法,哪种更好?还是有另一种方法? 问题答案: 如果要浅拷贝(不复制元素),请使用: 如果要进行深层复制,请使用复制模块:

  • 这不只是为每个属性做一堆if/else if用例吗?

  • 问题内容: 我想将许多文件都当作一个文件来对待。用生成器/不将整个文件读入内存的[文件名] => [文件对象] => [行]的正确pythonic方法是什么? 我们都知道打开文件的正确方法: 而且我们知道将多个迭代器/生成器链接为一个长链的正确方法: 但是如何将多个文件链接在一起并保留上下文管理器? 我可以忽略上下文管理器并执行类似的操作,但是感觉不对: 还是这种异步IO-PEP 3156 用途是

  • 问题内容: 如果我需要通过一个“动作”来更新或插入到多个表中,请调用一个保存信息的示例,其中有多个包含“信息”的表。 出于参数考虑,可以说我们有下表: 姓名地址汽车工作 每次调用保存信息时,都会将其中的每个表插入其中。 哪个更好: 获取必须写入名称表的数据。调用InsertOnSubmit并调用SubmitChanges 获取必须写入地址表的数据。调用InsertOnSubmit并调用Submit

  • 本文向大家介绍python中zip()函数遍历多个列表方法,包括了python中zip()函数遍历多个列表方法的使用技巧和注意事项,需要的朋友参考一下 在对列表的元素进行找寻时,会频繁的说到遍历的理念。对于复杂的遍历要求,如多个列表中查找就显然不适合用for循环。本篇所要带来的是zip() 函数的方法,能够对多个迭代器进行遍历。下面我们就python中zip的说明、语法、使用注意点进行讲解,然后带