Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Using a dictionary map solution in Clear category for Caesar Cipher (encryptor) by Eric_Meyer
from string import ascii_lowercase
def to_encrypt(text, delta):
# rotate the list by delta
mask = ascii_lowercase[delta:] + ascii_lowercase[:delta]
# create the mapping dictionary
mapping = dict()
for i, letter in enumerate(ascii_lowercase):
mapping[letter] = mask[i]
# encrypt text
encrypted = ''.join(mapping[elem] if elem != ' ' else ' ' for elem in text)
return encrypted
if __name__ == '__main__':
print("Example:")
print(to_encrypt('abc', 10))
#These "asserts" using only for self-checking and not necessary for auto-testing
assert to_encrypt("a b c", 3) == "d e f"
assert to_encrypt("a b c", -3) == "x y z"
assert to_encrypt("simple text", 16) == "iycfbu junj"
assert to_encrypt("important text", 10) == "swzybdkxd dohd"
assert to_encrypt("state secret", -13) == "fgngr frperg"
print("Coding complete? Click 'Check' to earn cool rewards!")
Sept. 27, 2018
Comments: