在序列中找到一组由 3 个氨基酸字母组成的特定组。如果其中一个位于该位置,则打印 1,否则打印 0。在姓名下打印

问题描述 投票:0回答:1

如果我查看位置 234,如果该位置有 V、I、E,则打印 1,如果不打印 0,则我有 3 个序列块。输出将包含氨基酸名称以及 1 或 0每个名字。在这种情况下,每个氨基酸下面都会有三个 1 或 0。例如,输出如下所示:

Valine  Isoleucine  Glutamic Acid
0       0           0
1       0           0
0       1           0        

代码给出了正确答案,但输出将是一条由 1 和 0 组成的垂直线。如有任何帮助,我们将不胜感激。

v_list = []
i_list = []
e_list = []
amino_list = 'Valine','Isoleucine' ,'Glutaminc Acid'
content = fasta.read()
print('Valine'+'\t'+'Isoleucine'+'\t'+ 'Glutamic Acid'+'\n')
for line in content.split(">"):
    if re.search(r"fibroblast growth factor receptor 1 isoform", line):
        sequence = re.sub('NP.*]', '', line)
        amino = sequence[4]
        if amino in ['V']:
            v_list.append(1)
        else:
            v_list.append(0)
        if amino in ['I']:
            i_list.append(1)
        else:
            i_list.append(0)
        if amino in ['E']:
            e_list.append(1)
        else:
            e_list.append(0)

for row in v_list:
    print row
python list search
1个回答
0
投票

我认为这应该有效

for i in range(len(v_list)):
    print f"{v_list[i]}\t{i_list[i]}\t{e_list[i]}"

您可以通过添加或删除选项卡来调整每列之间的间距

\t

© www.soinside.com 2019 - 2024. All rights reserved.