首页 > 其他 > 详细

求fasta文件中互补序列

时间:2017-05-13 19:48:36      阅读:323      评论:0      收藏:0      [点我收藏+]

一个名为read_1.fa 的fasta文件,里面有若干序列,如:

>@r1
TGAATGCGAACTCCGGGACGCTCAGTAATGTGACGATAGCTGAAAACTGTACGATAAACNGTACGCTGAGGGCAGAAAAAATCGTCGGGGACATTNTAAAGGCGGCGAGCGCGGCTTTTCCG
>@r2
NTTNTGATGCGGGCTTGTGGAGTTCAGCCGATCTGACTTATGTCATTACCTATGAAATGTGAGGACGCTATGCCTGTACCAAATCCTACAATGCCGGTGAAAGGTGCCGGGATCACCCTGTGGGTTTAT
>@r3
ATCGCCCGCAGACACCTTCACGCTGGACTGTTTCGGCTTTTACAGCGTCGCTTCATAATCCTTTTTCGCCGCCGCCATCAGCGTGTTGTAATCCGCCTGCAGGATTTTCCCGTCTTTCNGTGCCTTGNT
>@r4
GGGCCAATGCGCTTACTGATGCGGAATTACGCCGTAAGGCCGCAGATGAGCTTGTCCATATGACTGCGAGAATTAACNGTGGTGAGGCGATCCCTGAACCAGTAAAACAACTTCCTGTCATGGGCGGTA
>@r5
GTCAGGAAAGTGGTAAAACTGCAACTCAATTACTGCAATGCCCTCGTAATTAAGTGAATTTACAATATCGTCCTGTTCGGAGGGAAGAACGCGGGATGTTCATTCTTCATCACTTTTAATTGATGTATA
>@r6
AGCGACATTCTTCCTCGGTACATAATCTCCTTTGGCGTTTCCCGATGNCCGTCACGCACATGGNATCCCGTGATGACCTCATTAAAAACACGCTGCAATCCCTCCTCATCTTTGCAGGCGTCCGATTTT
>@r7
CCCCGCCACCATCCCGCCGGGCNTGTCCATATCGAGCAGAATGCTGTCCACCATCGGATCGCTGGCAGCCTGTTGCAGACGGGCGATAATGCCGTTGTAACCGGTCATCCCCGAGTACGGCTGCAGCGC
>@r8
NTGAACAGTAAACGTCTGTTGAGCACATCCTTTAATAAGCAGGGCCAGCGCAGTATCNAGTAGCATATTTTTCATGGTGTTATTCCCGATGCTTTTTG
>@r9
CCCGATGCTTTTTGAAGTTCGCAGAATCGTATGTGTAGANAATTAAACAAANCCT
..........等等

complement_seq.py代码如下:

#encoding = utf-8

"""
简介:求fasta文件中每个序列的互补序列
作者:刘自军
date:2017年5月18:54
"""
import sys
from collections import OrderedDict

args = sys.argv

seq = OrderedDict()
tmp_dit = {A:T,G:C,C:G,T:A,N:N}

with open(args[1]) as f:

    for line in f:
        
        line = line.strip(\n)
        if line.startswith(>):
            seq_id = line
            seq[seq_id] = ‘‘
        else:
            for i in line:
                seq[seq_id] += tmp_dit[i]

for id,com_seq in seq.items():
    print (%s\n%s %(id,com_seq))

python complement_seq.py read_1.fa

或者python complement_seq.py read_1.fa > com_read.fa

 

求fasta文件中互补序列

原文:http://www.cnblogs.com/nklzj/p/6850001.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!