Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Grondbeginselen van Foutafhandeling in Python: Voorkomen van Codecrashes | Foutafhandeling in Python Beheersen
Python Structureel Programmeren

bookGrondbeginselen van Foutafhandeling in Python: Voorkomen van Codecrashes

Foutafhandeling is een essentiële vaardigheid voor elke programmeur, omdat het programma's in staat stelt om op gepaste wijze te reageren op onverwachte problemen. Dit hoofdstuk behandelt de soorten fouten en uitzonderingen die kunnen optreden en hoe deze te behandelen met behulp van de try- en except-blokken.

Soorten fouten en uitzonderingen in Python

Python onderscheidt fouten in twee hoofdtypen: syntaxisfouten en uitzonderingen.

Syntaxisfouten

Syntaxisfouten treden op wanneer de parser een onjuiste instructie detecteert. Dit kan een typefout zijn, een ontbrekende haakje of onjuiste inspringing. Hier is een voorbeeld:

1
print("Hello world"
copy

Dit resulteert in een syntaxisfout (SyntaxError) omdat het sluitende haakje ontbreekt.

Uitzonderingen of runtime-fouten

Uitzonderingen zijn fouten die tijdens de uitvoering worden gedetecteerd. Veelvoorkomende uitzonderingen zijn:

  • IndexError: proberen een index te benaderen die niet bestaat;
  • ValueError: een argument met een onjuiste waarde doorgeven;
  • TypeError: onjuiste combinatie van gegevenstypen, zoals het optellen van een string bij een geheel getal;
  • ZeroDivisionError: een getal delen door nul;
  • FileNotFoundError: proberen toegang te krijgen tot een bestand dat niet bestaat.

Hier is een exceptie-hiërarchie waarbij elke fout op een lager niveau erft van de fout erboven. Dit betekent dat als u een exceptie op een hoger niveau opvangt, zoals Exception, u ook alle afgeleide 'kind'-fouten opvangt. Het is niet noodzakelijk om elke fout uit het hoofd te kennen, maar de fouten die geel gemarkeerd zijn, komen het meest voor en zijn bijzonder belangrijk om te herkennen.

De try, except-blok

Om excepties effectief af te handelen, gebruikt Python de try- en except-blokken. Hiermee kan het programma doorgaan, zelfs als er een fout optreedt.

Voorbeeld van een try, except-blok

1234567
try: # Attempt to divide by zero result = 10 / 0 print("The result is", result) except ZeroDivisionError: # This code runs if the ZeroDivisionError is raised print("Attempted to divide by zero.")
copy

Als de deling mogelijk zou zijn (d.w.z. delen door een ander getal dan nul), zou de print-instructie binnen het try-blok worden uitgevoerd en het except-blok worden overgeslagen. Het except-blok wordt alleen uitgevoerd wanneer de specifieke fout waarvoor het is bedoeld, wordt opgeworpen.

Taak

Swipe to start coding

Schrijf een script dat verschillende soorten fouten afhandelt met behulp van basisbewerkingen.

#Gebruik opmerkingen als handige tips bij het oplossen van deze taak 😉

Oplossing

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 1
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

close

bookGrondbeginselen van Foutafhandeling in Python: Voorkomen van Codecrashes

Veeg om het menu te tonen

Foutafhandeling is een essentiële vaardigheid voor elke programmeur, omdat het programma's in staat stelt om op gepaste wijze te reageren op onverwachte problemen. Dit hoofdstuk behandelt de soorten fouten en uitzonderingen die kunnen optreden en hoe deze te behandelen met behulp van de try- en except-blokken.

Soorten fouten en uitzonderingen in Python

Python onderscheidt fouten in twee hoofdtypen: syntaxisfouten en uitzonderingen.

Syntaxisfouten

Syntaxisfouten treden op wanneer de parser een onjuiste instructie detecteert. Dit kan een typefout zijn, een ontbrekende haakje of onjuiste inspringing. Hier is een voorbeeld:

1
print("Hello world"
copy

Dit resulteert in een syntaxisfout (SyntaxError) omdat het sluitende haakje ontbreekt.

Uitzonderingen of runtime-fouten

Uitzonderingen zijn fouten die tijdens de uitvoering worden gedetecteerd. Veelvoorkomende uitzonderingen zijn:

  • IndexError: proberen een index te benaderen die niet bestaat;
  • ValueError: een argument met een onjuiste waarde doorgeven;
  • TypeError: onjuiste combinatie van gegevenstypen, zoals het optellen van een string bij een geheel getal;
  • ZeroDivisionError: een getal delen door nul;
  • FileNotFoundError: proberen toegang te krijgen tot een bestand dat niet bestaat.

Hier is een exceptie-hiërarchie waarbij elke fout op een lager niveau erft van de fout erboven. Dit betekent dat als u een exceptie op een hoger niveau opvangt, zoals Exception, u ook alle afgeleide 'kind'-fouten opvangt. Het is niet noodzakelijk om elke fout uit het hoofd te kennen, maar de fouten die geel gemarkeerd zijn, komen het meest voor en zijn bijzonder belangrijk om te herkennen.

De try, except-blok

Om excepties effectief af te handelen, gebruikt Python de try- en except-blokken. Hiermee kan het programma doorgaan, zelfs als er een fout optreedt.

Voorbeeld van een try, except-blok

1234567
try: # Attempt to divide by zero result = 10 / 0 print("The result is", result) except ZeroDivisionError: # This code runs if the ZeroDivisionError is raised print("Attempted to divide by zero.")
copy

Als de deling mogelijk zou zijn (d.w.z. delen door een ander getal dan nul), zou de print-instructie binnen het try-blok worden uitgevoerd en het except-blok worden overgeslagen. Het except-blok wordt alleen uitgevoerd wanneer de specifieke fout waarvoor het is bedoeld, wordt opgeworpen.

Taak

Swipe to start coding

Schrijf een script dat verschillende soorten fouten afhandelt met behulp van basisbewerkingen.

#Gebruik opmerkingen als handige tips bij het oplossen van deze taak 😉

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 1
single

single

some-alt