Kom igångKom igång gratis

Strängindexering och sammanslagning

Du presenteras här med en av de tidigast kända krypteringsteknikerna – Caesarchiffret. Det bygger på en enkel förskjutning av varje bokstav i ett meddelande ett visst antal positioner framåt i alfabetet. Med det engelska alfabetet som grund innebär till exempel en förskjutning på 1 för 'xyz' att resultatet blir 'yza', och omvänt vid dekryptering. Observera att 'z' blir 'a' i det här fallet.

Kryptering och dekryptering kräver därför två argument: texten och en heltalsnyckel som anger förskjutningen (key = 1 i exemplet ovan).

Din uppgift är att skapa en krypteringsfunktion utifrån det engelska alfabetet, som lagras i strängen alphabet.

Den här övningen är en del av kursen

Öva på kodningsintervjufrågor i Python

Visa kurs

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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", ____))
Redigera och kör kod