Indexation et concaténation de chaînes
On vous présente l'une des premières techniques de chiffrement connues : le chiffrement de César. Il repose sur un simple décalage de chaque lettre d'un message d'un certain nombre de positions dans l'alphabet donné. Par exemple, avec l'alphabet anglais, un décalage de 1 pour 'xyz' donne 'yza', et vice versa pour le déchiffrement. Remarquez que 'z' devient 'a' dans ce cas.
Ainsi, le chiffrement/déchiffrement exige deux arguments : le texte et une clé entière qui indique le décalage (key = 1 dans l'exemple ci-dessus).
Votre tâche est de créer une fonction de chiffrement en utilisant l'alphabet anglais stocké dans la chaîne alphabet.
Cette activité fait partie du cours
S'entraîner aux questions d'entrevue de programmation en Python
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
def encrypt(text, key):
encrypted_text = ''
# Fill in the blanks to create an encrypted text
for char in text.lower():
idx = (alphabet.____(____) + ____) % len(____)
encrypted_text = encrypted_text + alphabet[idx]
return encrypted_text
# Check the encryption function with the shift equals to 10
print(____("datacamp", ____))