Réplication, Transcription et Traduction avec le langage de programmation Python

1 - La réplication

a) La séquence du brin parental

Voici ci-dessous la séquence du brin parental.

Cliquer dans la cellule ci-dessous puis appuyer sur le bouton "Exécuter" dans la barre au dessus. Cela va afficher la séquence parentale.

In [ ]:
sequence = "ATTGCCTTACAAGTATACGGGTTACTAAA"
print(sequence)

b) Réplication du brin parental

Ci-dessous voici un bout de code permettant de produire le brin complémentaire.

A l'aide de la complémentarité des bases azotées, compléter le code ci-dessous.

Vérifier que cela fonctionne en exécutant la cellule ci-dessous.

In [ ]:
complementaire = ""

for nucleotide in sequence:
    if nucleotide == "A":
        complementaire += "T"
    elif nucleotide == "T":
        complementaire += "A"
    elif nucleotide == "G":
        complementaire += 
    elif nucleotide == "C":
        complementaire += 

print("Séquence complémentaire :", complementaire)

2 - La transcription

A l'aide du code précédent sur la réplication, proposer un code qui permette d'obtenir l'ARNm transcrit à partir du brin parental.

Pour cela compléter le code ci-dessous.

In [ ]:
transcrit = ""

for nucleotide in sequence:
    if # compléter le code

    
    
    
    
    
    
print("Séquence transcrite :", transcrit)

3 - La traduction

a) Le code génétique

Ci-dessous, le code génétique est défini.

Mettre le curseur dans la cellule puis cliquer sur "Exécuter" pour mettre le code génétique en mémoire.

In [ ]:
ala = ["GCU", "GCC", "GCA", "GCG"]
arg = ["CGU", "CGC", "CGA", "CGG", "AGA", "AGG"]
asn = ["AAU", "AAC"]
asp = ["GAU", "GAC"]
cys = ["UGU", "UGC"]
gln = ["CAA", "CAG"]
glu = ["GAA", "GAG"]
gly = ["GGU", "GGC", "GGA", "GGG"]
his = ["CAU", "CAC"]
ile = ["AUU", "AUC", "AUA"]
leu = ["UUA", "UUG", "CUU", "CUC", "CUA", "CUG"]
lys = ["AAA", "AAG"]
met = ["AUG"]
phe = ["UUU", "UUC"]
pro = ["CCU", "CCC", "CCA", "CCG"]
ser = ["UCU", "UCC", "UCA", "UCG", "AGU", "AGC"]
thr = ["ACU", "ACC", "ACA", "ACG"]
trp = ["UGG"]
tyr = ["UAU", "UAC"]
val = ["GUU", "GUC", "GUA", "GUG"]
stop = ["UAG", "UGA", "UAA"]

b) Recherche du codon initiateur

Le code ci-dessous permet de rechercher le codon initiateur.

Exécuter le code ci-dessous.

In [ ]:
numero = 0
while numero < len(transcrit)-2:
    if transcrit[numero:numero+3] == "AUG":
        numbis = numero
        break
    numero += 1

Dans quelle variable est stockée la position du codon initiateur ?

Dans la cellule ci-dessous, compléter le code afin d'afficher la position du codon initiateur.

In [ ]:
print(# Ecrire ici la variable qui contient la position du codon initiateur)

c) Traduction de la séquence ARNm à partir du codon initiateur

Compléter le code ci-dessous afin qu'il soit fonctionnel.

In [ ]:
traduit = ""

while numbis < len(transcrit)-2:
    if transcrit[numbis:numbis+3] in ala:
        traduit += "Ala"
    elif transcrit[numbis:numbis+3] in arg:
        traduit += "Arg"
    elif transcrit[numbis:numbis+3] in asn:
        traduit += "Asn"
    elif transcrit[numbis:numbis+3] in cys:
        traduit += "Cys"
    elif transcrit[numbis:numbis+3] in gln:
        traduit += "Gln"
    elif transcrit[numbis:numbis+3] in glu:
        traduit += "Glu"
    elif transcrit[numbis:numbis+3] in gly:
        traduit += "Gly"
    elif transcrit[numbis:numbis+3] in his:
        traduit += "His"
    elif transcrit[numbis:numbis+3] in ile:
        traduit += "Ile"
    elif transcrit[numbis:numbis+3] in leu:
        traduit += "Leu"
    elif transcrit[numbis:numbis+3] in lys:
        traduit += "Lys"
    elif transcrit[numbis:numbis+3] in met:
        traduit += "Met"
    elif transcrit[numbis:numbis+3] in phe:
        traduit += "Phe"
    elif transcrit[numbis:numbis+3] in pro:
        traduit += "Pro"
    elif transcrit[numbis:numbis+3] in ser:
        traduit += "Ser"
    elif transcrit[numbis:numbis+3] in thr:
        traduit += "Thr"
    elif transcrit[numbis:numbis+3] in trp:
        traduit += 
    elif transcrit[numbis:numbis+3] in tyr:
        traduit += 
    elif transcrit[numbis:numbis+3] in val:
        traduit += 
    elif transcrit[numbis:numbis+3] in stop:
        traduit += "Stop"
        break
    numbis += 3

print("Séquence traduite :", traduit)

4 - Bilan

Pour rappel, proposer un code ci-dessous qui affiche la séquence parentale, la séquence complémentaire, la séquence transcrite et enfin la séquence traduite.

In [ ]:
print("La séquence parentale :", sequence)
# Compléter avec votre code

En revenant au début de cette page, il est possible de modifier la séquence parentale, puis d'exécuter toutes les cellules afin d'avoir la réplication, transcription et traduction de cette nouvelle séquence.