Skip to content

Instantly share code, notes, and snippets.

@chrisbay
Created May 15, 2017 13:05
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save chrisbay/496880de24bba4f532ed03211eff7294 to your computer and use it in GitHub Desktop.
Save chrisbay/496880de24bba4f532ed03211eff7294 to your computer and use it in GitHub Desktop.
For Web Caesar assignment
def alphabet_position(character):
alphabet = 'abcdefghijklmnopqrstuvwxyz'
lower = character.lower()
return alphabet.index(lower)
def rotate_string_13(text):
rotated = ''
alphabet = 'abcdefghijklmnopqrstuvwxyz'
for char in text:
rotated_idx = (alphabet_position(char) + 13) % 26
if char.isupper():
rotated = rotated + alphabet[rotated_idx].upper()
else:
rotated = rotated + alphabet[rotated_idx]
return rotated
def rotate_character(char, rot):
alphabet = 'abcdefghijklmnopqrstuvwxyz'
rotated_idx = (alphabet_position(char) + rot) % 26
if char.isupper():
return alphabet[rotated_idx].upper()
else:
return alphabet[rotated_idx]
def rotate_string(text, rot):
rotated = ''
for char in text:
if (char.isalpha()):
rotated = rotated + rotate_character(char, rot)
else:
rotated = rotated + char
return rotated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment