Package Bio :: Module Transcribe
[hide private]
[frames] | no frames]

Source Code for Module Bio.Transcribe

 1  import string 
 2   
 3  from Bio import Alphabet, Seq 
 4  from Bio.Alphabet import IUPAC 
 5   
6 -class Transcribe:
7 - def __init__(self, dna_alphabet, rna_alphabet):
8 self.dna_alphabet = dna_alphabet 9 self.rna_alphabet = rna_alphabet
10
11 - def transcribe(self, dna):
12 assert dna.alphabet == self.dna_alphabet, \ 13 "transcribe has the wrong DNA alphabet" 14 s = dna.data 15 return Seq.Seq(string.replace(s, "T", "U"), self.rna_alphabet)
16 - def back_transcribe(self, rna):
17 assert rna.alphabet == self.rna_alphabet, \ 18 "back transcribe has the wrong RNA alphabet" 19 s = rna.data 20 return Seq.Seq(string.replace(s, "U", "T"), self.dna_alphabet)
21 22 generic_transcriber = Transcribe(Alphabet.generic_dna, 23 Alphabet.generic_rna) 24 ambiguous_transcriber = Transcribe(IUPAC.ambiguous_dna, 25 IUPAC.ambiguous_rna) 26 unambiguous_transcriber = Transcribe(IUPAC.unambiguous_dna, 27 IUPAC.unambiguous_rna) 28