[python] Obsluha uživatelských chyb

Jan Martinek honza na dp.fce.vutbr.cz
Středa Listopad 1 19:56:43 CET 2006


Jakub Lucký wrote:
> Tak, a je tu můj premiérový lamerský dotaz
> 
> Mám jednoduchý kód
> 
> promenna =  input("zadej cislo:")
> 
> což mi v konzoli zobrazí normální dotaz, pokud ovšem místo čísel zadá
> dotyčný řetězec, vyhodí Python relativně ošklivý error...
> Nejde to nějak "pořešit" aby se místo toho dával třeba ValueError? napadají
> mě řešení přes Try/Except a Raise, ale nepodařilo se mi to zprovoznit
> 
> Děkuji za radu
> 
> Jakub
> 

Ahoj,

zkus tohle:

while True:
     try:
         promenna = int(raw_input("Zadej cislo "))
         break
     except ValueError:
         pass

print promenna


Raději bych se vyhýbal příkazu "input", protože mu jdou podstrčit různé 
věci - není moc bezpečný.


Další informace o konferenci Python