1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
import os, sys
pyScriptName = sys.argv[0]
RNASequence = sys.argv[1]
#outputProtein = sys.argv[2]
# Dictionnaire codon
Codon = {
"AUG": "Methionine",
"UUU": "Phenylalanine",
"UUC": "Phynylalanine",
"UUA": "Leucine",
"UUG": "Leucine",
"UCU": "Serine",
"UCC": "Serine",
"UCA": "Serine",
"UCG": "Serine",
"UAU": "Tyrosine",
"UAC": "Tyrosine",
"UGU": "Cysteine",
"UGC": "Cysteine",
"UGG": "Tryptophan",
"UAA": "STOP",
"UAG": "STOP",
"UGA": "STOP"
}
fasta_dict = {}
class Fasta():
"""Classe pour manipuler des fichiers fasta."""
def __init__(self, RNASequence):
self.RNASequence = RNASequence
def openFasta(self):
"""ouvre un fichier fasta, stocke l'id et la séquence dans un dictionnaire."""
with open(RNASequence, "r") as fasta_file:
sequence_id = ""
for line in fasta_file:
if line.startswith(">"):
sequence_id = line.strip()
fasta_dict[sequence_id] = ""
else:
fasta_dict[sequence_id] += line.strip()
return(fasta_dict)
def sequence(self):
"""Récuperer la sequence"""
seq_list = []
for seque in fasta_dict:
seq_list.append(fasta_dict[seque])
return(seq_list)
def RNAtoProteins(self):
"""Traduire la sequence ARN en protéine."""
for sequen in seq_list:
print(sequen)
protein = []
for i in range(0, len(sequen), 3):
aa = Codon[sequen[i:i+3]]
protein.append(aa)
if aa == "STOP":
break
return(protein)
if __name__ == "__main__":
test_file = Fasta(RNASequence)
my_file = test_file.openFasta()
print("Voici le resultat")
print(my_file)
result2 = test_file.sequence()
print("Resultat de .sequence")
print(result2)
proteinefromRNA = result2.RNAtoProteins()
print(proteinefromRNA) |
Partager