Comment traduit-on une séquence en protéine ?
La traduction lit une séquence d’ADN trois bases à la fois. Chaque groupe de trois bases, un codon, correspond à une lettre de protéine grâce à une table.
Vous allez écrire cette lecture avec une boucle et voir pourquoi le point de départ de la lecture change tout. La séquence est inventée.
À la fin de cette leçon
Remarque
Je peux traduire une séquence en protéine avec une table de codons et un cadre de lecture.
Mots clés
| Mot | Ce que ça veut dire | Exemple |
|---|---|---|
| Codon | un groupe de trois bases | ATG |
| Table de codons | la table qui donne la lettre de chaque codon | |
| Cadre de lecture | la base où l’on commence à lire par trois | |
| Codon d’arrêt | un codon qui termine la protéine | |
| Protéine | une suite de lettres obtenue par traduction |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Un codon de trois bases donne une lettre
Une table de codons associe à chaque codon une lettre de protéine. La lettre M, par exemple, répond à ATG. Quelques codons sont des codons d’arrêt : on note leur lettre par une étoile.
La table de cette leçon est réduite à sept codons, pour tenir dans un dictionnaire.
La table de codons de cette leçon
| Codon | Lettre | Codon | Lettre |
|---|---|---|---|
| ATG | M | TGG | W |
| GCT | A | GGC | G |
| AAA | K | TTT | F |
| TAA | * (arrêt) |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Le cadre de lecture décide des codons
Le cadre de lecture est la position où l’on commence à découper par trois. Le cadre 0 commence à la première base, le cadre 1 à la deuxième.
Le même texte donne des codons tout à fait différents selon le cadre. Une base de décalage change toute la protéine.
Exemple travaillé : deux cadres de ATGGCTAAATGGTAA
| Cadre | Codons lus | Lettres |
|---|---|---|
| 0 | ATG, GCT, AAA, TGG, TAA | M, A, K, W, arrêt |
| 1 | TGG, CTA, AAT, GGT | W puis trois codons hors de la table |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Découper en codons depuis la base 0
docker exec jupyter python3 -c "s='ATGGCTAAATGGTAA'; print([s[i:i+3] for i in range(0, len(s)-2, 3)])"Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.
Découper en codons depuis la base 1
docker exec jupyter python3 -c "s='ATGGCTAAATGGTAA'; print([s[i:i+3] for i in range(1, len(s)-2, 3)])"Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.
Traduire avec une table et une boucle
table = {"ATG": "M", "GCT": "A", "AAA": "K", "TGG": "W", "GGC": "G", "TTT": "F", "TAA": "*"}
sequence = "ATGGCTAAATGGTAA"
proteine = ""
# On lit trois bases à la fois, à partir de la base 0.
for debut in range(0, len(sequence) - 2, 3):
codon = sequence[debut:debut + 3]
lettre = table[codon]
if lettre == "*":
# Le codon d'arrêt termine la protéine.
break
proteine = proteine + lettre
print(proteine)
# Mettez range(1, ...) à la place de range(0, ...) pour décaler le cadre : que se passe-t-il ?
Une erreur fréquente
Attention
Beaucoup lisent la séquence depuis la première lettre sans se demander où commence le gène. Si le départ est mal choisi, tous les codons sont faux. Cherchez d’abord le codon de départ ATG, puis lisez de trois en trois.
Pour aller plus loin
Dans votre carnet, inventez une séquence de 18 bases qui commence par ATG et finit par TAA. Traduisez-la avec la table de la leçon.
Essayez ensuite le cadre 2 et dites ce que devient la protéine.