Nieuws:

We zijn er weer.

Na lange tijd van afwezigheid zijn we er weer  :laugh:
We hebben alle wachtwoorden gereset, je oude wachtwoord werkt niet meer.Je moet via het "wachtwoord vergeten"-linkje je wachtwoord resetten. Je krijgt hiervoor een mailtje op het adres dat je bij ons geregistreerd hebt.

De komende tijd zijn we nog druk bezig om de rest van de site op te bouwen, dus het kan zijn dat sommige onderdelen (tijdelijk) niet werken.

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: try: en finally: in python  (gelezen 811 keer)

Offline henkoegema

  • Lid
    • PA2HO
  • Steunpunt: Nee
try: en finally: in python
« Gepost op: 2017/05/16, 16:49:08 »
Wat is eigenlijk het nut van try: en finally:  in een python programma. (zie attachment)

Kan ik die niet net zo goed  weglaten?
Miscere utile dulci. (Ter leering ende vermaeck)
http://www.henk.oegema.com
Registered linux user 520520.  In gebruik: Ubuntu 18.04.  Radio Amateur callsign: PA2HO Interesses: Raspberry Pi & Arduino

Offline erik1984

  • Lid
    • erik1984
  • Steunpunt: Nee
Re: try: en finally: in python
« Reactie #1 Gepost op: 2017/05/16, 19:50:55 »
Citaat
A finally clause is always executed before leaving the try statement, whether an exception has occurred or not.
bron: https://docs.python.org/3.4/tutorial/errors.html

Try, except en finally zorgen ervoor dat je fouten die optreden binnen dat blok netjes kan afhanelen zonder dat de applicatie er 'uitklapt'. Met finally kun je nog opruimacties verrichten zoals in jouw voorbeeld. Deze actie wordt altijd uitgevoerd, dus ook als er een fout is opgetreden die je hebt afgevangen. Maar zelfs wanneer je geen fout hebt afgevangen maar er wel één optreedt (in dat geval wordt eers het finally-blok uitgevoerd en daarna alsnog de foutmelding naar boven gegooid). Zonder finally zou GPIO.cleanup() niet worden aangeroepen indien er een niet afgevangen fout optreedt in de code ervoor.

« Laatst bewerkt op: 2017/05/16, 19:54:38 door erik1984 »

Offline henkoegema

  • Lid
    • PA2HO
  • Steunpunt: Nee
Re: try: en finally: in python
« Reactie #2 Gepost op: 2017/05/16, 21:00:14 »
Citaat
A finally clause is always executed before leaving the try statement, whether an exception has occurred or not.
bron: https://docs.python.org/3.4/tutorial/errors.html

Try, except en finally zorgen ervoor dat je fouten die optreden binnen dat blok netjes kan afhanelen zonder dat de applicatie er 'uitklapt'. Met finally kun je nog opruimacties verrichten zoals in jouw voorbeeld. Deze actie wordt altijd uitgevoerd, dus ook als er een fout is opgetreden die je hebt afgevangen. Maar zelfs wanneer je geen fout hebt afgevangen maar er wel één optreedt (in dat geval wordt eers het finally-blok uitgevoerd en daarna alsnog de foutmelding naar boven gegooid). Zonder finally zou GPIO.cleanup() niet worden aangeroepen indien er een niet afgevangen fout optreedt in de code ervoor.

Duidelijk.    :)
Miscere utile dulci. (Ter leering ende vermaeck)
http://www.henk.oegema.com
Registered linux user 520520.  In gebruik: Ubuntu 18.04.  Radio Amateur callsign: PA2HO Interesses: Raspberry Pi & Arduino