Wpis z mikrobloga

#python #programowanie
Jak to naprawić? "unindent does not match any outer indentation level"
Pojawia się w tym kawałku kodu:
def potwybor():
potwybor2 = eval(input("Wybierz 1 aby powrócić do menu lub 2 aby wyjść... "))
if potwybor2 == 1: >o tu
menu()
if potwybor2 == 2: >i tu
exit
while not potwybor2 in (1, 2):
print ("Błąd... uruchamianie restartu")
potwybor()
Kod na github (pełny): https://github.com/oxygen7/Kalkulator/blob/master/Kalkulator(NowaWersja).py
Wiem że jest to coś ze spacjami i tabami ale za cholerę nie wiem jak to naprawić.
  • 19
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@regedit7: nie ma paniki, wiadomo że te emocje tutaj są przesadzone właśnie po to, żebyś wiedział, że takie coś JEST niebezpieczne i należy tego unikać :)
  • Odpowiedz
@regedit7: aż tak daleko iść nie trzeba - wystarczy że będziesz sanityzował input. Lecisz po całym stringu i sprawdzasz czy wszystko w nim to

a) cyfry
b) znaki działań matematycznych
c) znaki białe

jeśli znak nie zalicza się do żadnej z tych 3 grup -> rzucasz wyjątek że niepoprawne wejście
  • Odpowiedz