Create a program that will encrypt letters and create a secret code. You will: c
ID: 3816506 • Letter: C
Question
Create a program that will encrypt letters and create a secret code. You will:
create an array of numbers from 0 - 25.
use [i for i in range (26)] to create an array of numbers from 0 - 25.
use random.shuffle to to shuffle the above array. This will be used for a new letter index order.
*For example:
The first created array
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25]
gets shuffled to become
[2, 14, 12, 20, 16, 5, 11, 1, 13, 17, 15, 21, 19, 10, 23, 22, 25, 3, 6, 7, 18, 4, 9, 24, 0, 8]
This will be used as the new index for the encrypted alphabet.
create an array of letters using list(string.ascii_lowercase), this requires importing the string module.
This will create:
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
Accept an input of a word. Using the above tables take each letter of the word and convert it to the encrypted letter.
Print each letter with the existing letter value and the encrypted letter value.
Print the newly encrypted word.
Include a space as an encrypted character and allow for multiple words.
Help with this code please! Thanks
Explanation / Answer
# Link for code: https://pastebin.com/6mkk5nGt
import random
import string
numbers = [i for i in range (26)]
random.shuffle(numbers)
letters = list(string.ascii_lowercase)
def encrypt(word):
encrypted = []
for w in word:
if w.isspace():
encrypted.append(w)
else:
encodedChar = letters[numbers[ord(w) - ord('a')]]
print(w + " ===> " + encodedChar)
encrypted.append(encodedChar)
return "".join(encrypted)
word = raw_input("Enter a word to encrypt: ")
print("Encrypted word: " + encrypt(word))
Please note this code is coded for python 2.7+
If you are using python3 then change raw_input to input.
Please rate positively if this answered your question.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.