Python插入变量输出
我需要把一个DNA序列翻译成它对应的氨基酸序列。我已经编写了整个程序,但是我对输出的方式有困难 总之,我有以下代码:Python插入变量输出,python,bioinformatics,Python,Bioinformatics,我需要把一个DNA序列翻译成它对应的氨基酸序列。我已经编写了整个程序,但是我对输出的方式有困难 总之,我有以下代码: for x in f1: x = x.strip() if x.count("seq"): f2.write((x)+("_1_+\n")) f2.write((x)+("_2_+\n")) f2.write((x)+("_3_+\n")) f2.write((x)+("_1_-\n"))
for x in f1:
x = x.strip()
if x.count("seq"):
f2.write((x)+("_1_+\n"))
f2.write((x)+("_2_+\n"))
f2.write((x)+("_3_+\n"))
f2.write((x)+("_1_-\n"))
f2.write((x)+("_2_-\n"))
f2.write((x)+("_3_-\n"))
else:
f2.write((translate1(x))+("\n"))
f2.write((translate2(x))+("\n"))
f2.write((translate3(x))+("\n"))
f2.write((translate1neg(x))+("\n"))
f2.write((translate2neg(x))+("\n"))
f2.write((translate3neg(x))+("\n"))
这将产生以下输出:
>seq1_1_+
>seq1_2_+
>seq1_3_+
>seq1_1_-
>seq1_2_-
>seq1_3_-
iyyslrs-las-smrlssiv-m
fiirydrs-ladrcgshrssk
llfativas-lidaalidrl
frrsmraasis-lativannkm
lddr-ephrsas-lrs-riin
-tidesridqlasydrse--m
但我需要的是这样的东西:
>seq1_1_+
iyyslrs-las-smrlssiv-m
>seq1_2_+
fiirydrs-ladrcgshrssk
>seq1_3_+
llfativas-lidaalidrl
>seq1_1_-
frrsmraasis-lativannkm
>seq1_2_-
lddr-ephrsas-lrs-riin
>seq1_3_-
-tidesridqlasydrse--m
所以,我的问题是,我如何解决这个问题?您正在将它们一起打印。很明显,为什么输出是如此…看起来您正在将不适合的内容混合到一个数据结构中。请发布您的整个计划,以便我们能更好地帮助您。
# First store data.
sequence = []
translated = []
for x in f1:
x = x.strip()
if x.count("sequence"):
sequence.append((x)+("_1_+\n"))
sequence.append((x)+("_2_+\n"))
sequence.append((x)+("_3_+\n"))
sequence.append((x)+("_1_-\n"))
sequence.append((x)+("_2_-\n"))
sequence.append((x)+("_3_-\n"))
else:
translated.append((translate1(x))+("\n"))
translated.append((translate2(x))+("\n"))
translated.append((translate3(x))+("\n"))
translated.append((translate1neg(x))+("\n"))
translated.append((translate2neg(x))+("\n"))
translated.append((translate3neg(x))+("\n"))
# and then write it to file.
for s, t in zip(sequence, translated):
f2.write(s)
f2.write(t)