更改文件中的字符串顺序

时间:2014-11-03 00:31:20

标签: python biopython

我有一个包含这个结构的文件,一个带有他基因的片段ID,例如r1有2个基因,r2只有一个,等等:

r1
gene_1  1   181
gene_2  220 300
r2
gene_1  1   295
r3
gene_1  39  278

我需要在他的基因字符串前面移动每个“r”字符串:

r1 gene_1   1   181
r1 gene_2   220 300
r2 gene_1   1   295
r3 gene_1   39  278

任何想法?

2 个答案:

答案 0 :(得分:0)

with open('path/to/input') as infile, open('path/to/output', 'w') as outfile:
    for line in infile:
        if not line.count('\t'):
            gene = line.strip()
            continue
        outfile.write(gene + '\t')
        outfile.write(line)

答案 1 :(得分:0)

with open("in.txt") as f:
    joined = ""
    for  ele in  f:
        if len(ele.split()) == 1:
            name = ele.rstrip()
        else:
            joined += "{} {}".format(name, ele)
    with open("in.txt","w") as f1:
        f1.write(joined)

输出:

r1 gene_1  1   181
r1 gene_2  220 300
r2 gene_1  1   295
r3 gene_1  39  278