diff --git a/caesar.py b/caesar.py index e69de29..9b1e6d4 100644 --- a/caesar.py +++ b/caesar.py @@ -0,0 +1,27 @@ +import sys +from lib.vars import alphabet + +if( len(sys.argv) >= 4 ): + in_key = int(sys.argv[1]) + in_txt = sys.argv[2] + in_alphabet = sys.argv[3] +else: + print("file.py {int KEY} {string TXT} {string ALPHABET_TYPE}") + exit() + +alen = len(alphabet[in_alphabet]) + +txt_list = list(in_txt) +decryp_list = [""] * len(in_txt) + +for char in txt_list: + index = alphabet[in_alphabet].index(char) + + index = index + in_key # shift the alphabet + while( index >= alen ): #cycle through the alphabet + diff = (index + in_key) - (alen - 1) + index = 0 + diff # a bit spaghetti but who doesn't like spaghetti + + decryp_list[txt_list.index(char)] = alphabet[in_alphabet][index] + +print(decryp_list) diff --git a/lib/__pycache__/vars.cpython-38.pyc b/lib/__pycache__/vars.cpython-38.pyc new file mode 100644 index 0000000..e012f29 Binary files /dev/null and b/lib/__pycache__/vars.cpython-38.pyc differ diff --git a/lib/vars.py b/lib/vars.py index f7bdd2e..995c07c 100644 --- a/lib/vars.py +++ b/lib/vars.py @@ -1,10 +1,12 @@ -alphabet = ["a", "b" ] -F G H I J +eng_alphabet = ["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"] -K L M N O +swe_alphabet = ["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", "å", "ä", "ö"] -P Q R S T -U V W X Y +# Definitions +alphabet = dict() -Z Å Ä Ö +alphabet["ENG"] = eng_alphabet +alphabet["SWE"] = swe_alphabet + +# Functions