Python:帮助新行字符

时间:2010-07-01 18:14:27

标签: python

我读了一个以制表符分隔的文本文件,然后我有一个每行的列表,我然后索引每个列表的第一个条目,然后我把它写入文件。代码如下:

import csv
z = csv.reader(open('output.blast'), delimiter='\t')
k = open('output.fasta', 'w')
for row in z:
    print row[1:12]
    for i in row[1:12]:
        k.write(i+'\t')

当写入文件时,它将其写为一个长行,我希望在每个列表中的第11个(最后一个)条目之后启动一个新行。但我无法弄清楚在哪里放新线特征

3 个答案:

答案 0 :(得分:6)

听起来你只想在每一行之后想要它,所以把它放在遍历行的for循环的末尾:

for row in z:
    print row[1:12]
    for i in row[1:12]:
        k.write(i+'\t')
    k.write('\n')

答案 1 :(得分:2)

如果您将其写回标签分隔格式,为什么不再使用csv包?

r = csv.reader(open('output.blast'),delimiter='\t')
outfile = open('output.fasta','w')
w = csv.writer(outfile,delimiter='\t')
w.writerows(row[1:12] for row in r)
outfile.flush()
outfile.close()

答案 2 :(得分:0)

import csv
z = csv.reader(open('output.blast'), delimiter='\t')
k = open('output.fasta', 'w')
for row in z:
    print row[1:12]
    for i in row[1:12]:
        k.write(i+'\t')
    k.write('\n ') # <- write out the newline here.
相关问题