首页 > 解决方案 > 将多个列表写入文件

问题描述

我试图一次将多个列表写入一个文件,特别是试图让每个列表每行写出一个值,然后在最后有一个新行。我试图将其实现为:

for p in ID:
        o.write(ID[p], Name[p], HP[p], ATK[p], DEF[p], SPA[p], SPD[p], SPE[p])

但是 write() 只接受一个参数,所以上面的代码自然会失败。对我来说重要的是,写入输出文件的每一行都有一个来自每个列表的值,用逗号分隔,当 8 个列表中的每一个完成一次时,都有一个换行符。

标签: python

解决方案


听起来像一个 CSV 文件。

import csv

with open('output.txt', 'w', newline='') as f:
    csv.writer(f).writerows([ID[p], Name[p], HP[p], ATK[p], DEF[p],
        SPA[p], SPD[p], SPE[p]] for p in ID)

推荐阅读