这个问题已经有了答案:
How to iterate through two lists in parallel?
4个答案
具体来说,我有两个字符串列表,希望将它们组合成一个字符串,其中每一行是列表中的下两个字符串,用空格分隔:
a = ['foo1', 'foo2', 'foo3']
b = ['bar1', 'bar2', 'bar3']
我想要一个函数combine_to_lines(),它将返回:
"""foo1 bar1
foo2 bar2
foo3 bar3"""
我承认我已经解决了这个问题,所以我要把答案贴出来。但也许其他人有更好的或者看到了我的缺点。
更新:我过度简化了上面的示例。在我的实际问题中,这些行的格式更加复杂,需要解包从zip()返回的元组。但是,对于提出这个例子的最简单的解决方案,我们感到非常荣幸。
最佳答案
不需要对zip返回的元组进行解包和重新打包:
'\n'.join(' '.join(x) for x in zip(a, b))