Build a Caesar Cipher - Step 23

Tell us what’s happening:

I don’t see the problem can anyone else see it?

Your encrypt function should return caesar(text, shift).

Your code so far

def caesar(text, shift, encrypt=True):

    if not isinstance(shift, int):
        return 'Shift must be an integer value.'

    if shift < 1 or shift > 25:
        return 'Shift must be an integer between 1 and 25.'

    alphabet = 'abcdefghijklmnopqrstuvwxyz'

    if not encrypt:
        shift = - shift
    
    shifted_alphabet = alphabet[shift:] + alphabet[:shift]
    translation_table = str.maketrans(alphabet + alphabet.upper(), shifted_alphabet + shifted_alphabet.upper())
    encrypted_text = text.translate(translation_table)
    return encrypted_text


# User Editable Region

def encrypt(text, shift):
    return caeser(text, shift)
def decrypt(text, shift):
    return caeser(text, shift, False)

# User Editable Region


encrypted_text = caesar('freeCodeCamp', 3)
print(encrypted_text)

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36 OPR/127.0.0.0

Challenge Information:

Build a Caesar Cipher - Step 23

are you sure you are using the right function name?

1 Like

sometimes it could be a misspelling error

I am sure it is the most common bug

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.