繁体   English   中英

如何将两个相互匹配的列表输出到一个txt文件中

[英]How to output two lists match to each other into a txt file

我这里有两个列表:

a=["rate","date","population"]
b=[4,2/3/2021,1523]

我需要将这两个列表输出到这样的 txt 文件中:

rate    date    population
4    2/3/2021    1523

两个单词之间的空格是一个制表符,我尝试使用类似的代码

with open("data.txt","w") as outfile:
zipped = zip(a, b)
set1=[]
for i, r in zipped:
    set1.append(i)
    set1.append(r)
 outfile.write(str(set1))

但它不起作用,我不知道如何将选项卡空间选项放入其中。 需要一些帮助! 谢谢!

您可以使用csv模块的DictWriter编写制表符分隔的文件。 为此,您可以将分隔符指定为制表符。

import csv
filename = "output.txt"
a = ["rate","date","population"]
b = [4,2/3/2021,1523]
values = dict(zip(a,b))

with open(filename, 'wb') as f:
    writer = csv.DictWriter(f, delimiter='\t', fieldnames=a)
    writer.writeheader()
    writer.writerows(values)

您可以尝试使用\\t

a=["rate","date","population"]
b=["4","2/3/2021","1523"]

with open("data.txt","w") as outfile:
    outfile.write('\t'.join(a)+'\n')
    outfile.write('\t'.join(b))

您可以使用下面的代码段实现您的结果

a=["rate","date","population"]
b=['4','2/3/2021','1523']

result = '\t'.join(a) + '\n' + '\t'.join(b)

with open('result.txt', 'w') as f:
    f.writelines(result)

我会使用csv模块:

import csv

with open("data.txt", "w") as outfile:
    writer = csv.writer(outfile, delimiter='\t')
    writer.writerow(a)
    writer.writerow(b)
a=["rate","date","population"] b=[4,"2/3/2021",1523] with open("data.txt","w") as outfile: for x in a: outfile.write(f'{x}\t') outfile.write('\n') for x in b: outfile.write(f'{x}\t') outfile.write('\n')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM