如何将两个列表按顺序附加到文本文件中?

How to append two lists in order into a text file?

假设我有两个列表:

a = [1, 2, 3, 4]

b = [hello, how, iz, life]

我如何创建一个新列表 c 以获取列表 a 中的每个元素并将其与列表 b 中的元素相匹配?我希望文本文件看起来像这样:

1 hello
2 how
3 iz
4 life

我尝试 c.append(a,b),但出现以下错误:

TypeError: list.append() takes exactly one argument (2 given)

尝试以下操作:

a = [1, 2, 3, 4]

b = ["hello", "how", "iz", "life"]


c = zip(a,b)

with open("sample.txt", 'w') as outfile:
    for elem in c:
        outfile.write(str(elem[0]) + " " + elem[1] +"\n")

这将输出:

1 hello
2 how
3 iz
4 life

到名为 sample.txt.

的文件

编辑: 凯利提出了一个很好的观点,你可以将这条线简化为 print(*elem, file=outfile)。我查看了 docs for print,我惊讶地发现 print 函数为 *objects 参数中给定的元素定义了一个分隔符,并通过默认参数以换行符结束该行,这为我们提供了相同的所需输出。