Learn String Manipulation by Building a Cipher - Step 58

Tell us what’s happening:

My code shows two instances of key_index variable. I am confused as to which one of them should I use for the addition assignment operator so as to increment key_index by one.

Your code so far


text = 'Hello Zaira'
custom_key = 'python'

def vigenere(message, key):
    key_index = 0
    alphabet = 'abcdefghijklmnopqrstuvwxyz'
    encrypted_text = ''

    for char in message.lower():

/* User Editable Region */

        # Append space to the message
        if char == ' ':
            encrypted_text += char
        else:
            key_char = key[key_index += 1 % len(key)]

/* User Editable Region */

            index = alphabet.find(char)
            new_index = (index + key_index) % len(alphabet)
            encrypted_text += alphabet[new_index]
    print('plain text:', message)
    print('encrypted text:', encrypted_text)

Your browser information:

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

Challenge Information:

Learn String Manipulation by Building a Cipher - Step 58

You appear to have created this post without editing the template. Please edit your post to Tell us what’s happening in your own words.

Oh okay yeah I see it now. The initial line in the else statement should be untouched. Instead you have to use += 1 operation on a new late to increase key_char.

1 Like

Please which template am I supposed to edit

Yaaayy!!! I got it. Thanks @HungryBee

2 Likes

Yay good job! :blush:
I’m glad you got it!

1 Like

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