Bonjour,
Je dois réaliser un code où j'ai un message de départ avec des accents (àâäÀÂÄéèêëÉÈÊËîïÎÏôöÔÖùûüÙÛÜ)...
Le problème est que je crypte ou décrypte le code par décalage et j'ai un problème lorsque je converti un accent en une minuscule (sans accent), la lettre suivante n'est pas convertie, un problème d'incrémentation en fait :
Cas juste avec les a accentués...
Code python : 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
18
19
20
21
22 message = 'àâäÀÂÄ YRXV GHYULHC PDLQWHQDQW HWUH SUHW SRXU OH SURFKDLQ FRQWUROH...' accent = 'àâäÀÂÄéèêëÉÈÊËîïÎÏôöÔÖùûüÙÛÜ' minuscule = 'abcdefghijklmnopqrstuvwxyz' longueur = len(message) i = 0 messageC = '' while i < longueur: if message[i]==accent[0] or message[i]==accent[1] or message[i]==accent[2] or message[i]==accent[3] or message[i]==accent[4] or message[i]==accent[5]: messageC = messageC + minuscule[0] i = i+1 messageC = messageC + message[i] i = i+1 #code donné par le prof, que je ne comprend pas entièrement d'ailleurs... chiffre = '' def decalage(caractere,valeur):return(chr(((ord(caractere)-ord('a')+valeur)%26)+ord('a'))) for c in messageC: if c.isalpha(): chiffre = chiffre + decalage(c,3) else: chiffre = chiffre + c print(chiffre)
Merci de votre lecture.
Partager