Bonjour,
Il m'a été demandé d'écrire une fonction RLE encoding qui prend une chaine de caractères et l'encode au format RLE
exemple :
RLEencode("AAABBCCCC")
>>> "3A2B4C"
et d'ecrire une fonction RLEdecode ben qui fait l'inverse.
J'ai réussi a faire la RLEdecode :
mais je bug totalement sur la RLEencode est ce que quelqu'un pourrait m'indiquer comment m'en sortir avec ce que j'ai déja ecrit a savoir :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 i = 0 res = "" while i < len(x): if len(x) == len (x): res = res + int(x[i]) * str(x[i+1]) i += 2 return res
Merci !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 def RLEencode(x): i = 0 res = "" prov = 0 while i < len(x): if x[i] == "A": prov = prov + 1 res = res + str(max(prov,0)) + "A" elif x[i] == "T": res = res + str(x.count("T")) + "T" elif x[i] == "C": res = res + str(x.count("C")) + "C" elif x[i] == "G": res = res + str(x.count("G")) + "G" i += 1 return res
Partager