CommencerCommencez gratuitement

Indexation et concaténation de chaînes

Voici l’une des premières techniques de chiffrement connues : le chiffre 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, réciproquement, lors du déchiffrement. Remarquez que 'z' devient 'a' dans ce cas.

Ainsi, le chiffrement/déchiffrement nécessite deux arguments : le texte et une clé entière indiquant 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.

Cet exercice fait partie du cours

<cours>S’exercer aux questions d’entretien de code en Python</cours>
Voir le cours

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", ____))
Modifier et exécuter le code