Witam,
Znam już podstawy Pythona i postanowiłem, że napiszę pierwszy, prosty projekt (Szyfr cezara). Prosiłbym o opinie nad czym muszę popracować/co zmienić/czy kod jest przejrzysty itp. (Tak wiem, że jeśli na starcie wpiszę np. słowo "wyraz" i klucz "20", to program w pewnym sensie się wysypie z powodu ost. litery "z", ale nie zwracajcie na to uwagi. W pełni działający skrypt mam na kompie, a aktualnie nie mam do niego dostępu. Ale różni się tylko warunkiem if WprowadzonyTekst >= maks ascii od z)
#Funkcja szyfrowania
def szyfruj(WprowadzTekst, klucz):
for i in range(len(WprowadzTekst)):
if(ord(szyfr[i]) == 32):
szyfr[i] = " "
else:
szyfr[i] = chr(ord(szyfr[i]) + klucz)
#Funkcja deszyfrowania
def deszyfruj(szyfr, klucz):
for i in range(len(szyfr)):
if(ord(szyfr[i]) == 32):
szyfr[i] = " "
else:
szyfr[i] = chr(ord(szyfr[i]) - klucz)
#Połącz znaki z listy w jeden wyraz
def listToString(szyfr):
str1 = ''
return (str1.join(szyfr))
#Wprowadz tekst, który chcesz zaszyfrować
WprowadzTekst = input("Wprowadz tekst: ")
#Utwórz listę (Znaków w string'u nie da się zamienić)
szyfr = list(WprowadzTekst)
#Wprowadz klucz
klucz = int(input("Wprowadz klucz: "))
#Wywołaj funkcję szyfruj i wyświetl zaszyfrowany tekst
szyfruj(WprowadzTekst, klucz)
print(listToString(szyfr))
#Wywołaj funkcję deszyfruj i wyświetl odszyfrowany tekst
deszyfruj(szyfr, klucz)
print(listToString(szyfr))