[python] Jak ukoncit podprogram po fatalnej chybe bez toho aby sa ukoncil aj hlavny program

RMiklos na pss.sk RMiklos na pss.sk
Středa Leden 31 11:30:01 CET 2007


V pripade takto jednoducheho programu ktory ma len jednu funkciu by return 
pomohol, 
pretoze return ukoncuje funkciu. 
Ale co v pripade realneho programu, ktory ma viac funkcii?
fkt1()
fkt2()
....
Ak v niektorej funkcii nastane fatalna chyba chcem aby sa ukoncil cely 
program a nepokracoval dalej.
Nechcem, aby sa ukoncila len funkcia a pokracovalo sa v dalsej funkcii. 





"Petr Prikryl" <PrikrylP na skil.cz> 
Sent by: python-bounces na py.cz
31.01.2007 11:13
Please respond to
Konference PyCZ <python na py.cz>


To
"Konference PyCZ" <python na py.cz>
cc

Subject
Re: [python] Jak ukoncit podprogram po fatalnej chybe bez toho aby      sa 
ukoncil aj hlavny program






A nepomohl by místo sys.exit() jednoduąe return? 

> -----Original Message-----
> From: python-bounces na py.cz [mailto:python-bounces na py.cz] On 
> Behalf Of RMiklos na pss.sk
> Sent: Wednesday, January 31, 2007 11:02 AM
> To: Konference PyCZ
> Subject: [python] Jak ukoncit podprogram po fatalnej chybe 
> bez toho aby sa ukoncil aj hlavny program
> 
> Mam podprogram v module
> ----------- skript consolepgm.py ------------
> import sys
> 
> class pgm:
>   def __init__(self):
>     pass
> 
>   def cosi(self):
>     pass
> 
>   def kdesi(self):
>     pass
> 
>   def run(self):
>     for j in range(9): 
>       if j!=7:
>         print "running..."
>       else:
>         print "j = %d" %j
>         print "Stop"
>         sys.exit()
> 
> if __name__ == "__main__":
>   mypgm=pgm()
>   mypgm.run()
> ---------------- koniec --------------------
> 
> a hlavny program z ktoreho ho volam takto
> --------------- skript ---------------------
> from consolepgm import pgm
> #
> print "spustam program..."
> mypgm=pgm()
> mypgm.run()
> print "koniec programu"
> ---------------- koniec --------------------
> 
> Problem: sys.exit() ukonci vsetko, t. j. nie len volany 
> program, ale aj 
> volajuci, t.j
> hlaska "koniec programu" sa nikdy nevypise. Rad by som 
> ukoncil len volany 
> podprogram tak, 
> aby hlavny program pokracoval dalej. Ide to nejako?
> 
> 
> 
> 
> 
> 
> 
> Mgr. Ing. Roman MIKLÓ© 
> Prvá stavebná sporiteµňa a.s. 
> Bajkalská 30, P. O. Box 48 
> 829 48  Bratislava 25 
> Tel.: +421/ 2 / 582 31 174 
> Fax: +421/ 2 / 582 31 109 
> 
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
> 
_______________________________________________
Python mailing list
Python na py.cz
http://www.py.cz/mailman/listinfo/python


Mgr. Ing. Roman MIKLÓ© 
Prvá stavebná sporiteµňa a.s. 
Bajkalská 30, P. O. Box 48 
829 48  Bratislava 25 
Tel.: +421/ 2 / 582 31 174 
Fax: +421/ 2 / 582 31 109 



Daląí informace o konferenci Python