Python Foutmeldingen: Betekenis en Oplossingen
SyntaxError
Betekenis: Er staat een fout in de schrijfwijze van de code.
Oplossing: Controleer dubbele punten, haakjes, aanhalingstekens en inspringing.
IndentationError
Betekenis: Inspringing van de code is ongeldig. Bv. bij niet inspringen na een if-block/ na een def.
Oplossing: Gebruik consequent 4 spaties per niveau.
NameError
Betekenis: Een variabele of functie bestaat niet, maar je roept hem wel op. Kan ook voorkomen
bij functies: variabelen die aangemaat worden in de functie zijn lokaal en kunnen enkel gebruikt
worden in de functie. Variabelen aangemaakt buiten de functie zijn global en kunnen ook
gebruikt worden in de functie. Als globale variabelen aangepast worden binnen een functie
wordt deze nieuwe waarde wel niet opgeslaan buiten de functie er is een nieuwe locale
variabele aangemaakt
Oplossing: Controleer de spelling en of de variabele eerst werd aangemaakt.
TypeError
Betekenis: Een bewerking wordt uitgevoerd op een ongeschikt datatype. Bv. een getal (int/
float) optellen bij een string.
Oplossing: Controleer de types en gebruik eventueel int(), str(), float(), enz.
Opmerking: float en integer kunnen wel gecombineerd worden. 2 strings ook, maar deze
worden gewoon aan elkaar geplakt.
Opmerking: als je een kommagetal schrijft met een komma i.p.v. een punt geeft hij in de
foutmelding weer dat je niet kan rekenen met een tuple!
AttributeError
Betekenis: Een object heeft het gevraagde attribuut of de methode niet. Bv. wanneer je een
string-methode gebruikt op een integer, of wanneer je een typfout hebt is de naam van je
methode/ een onbestaande methode gebruikt.
Oplossing: Controleer de naam van de methode en het datatype.
ZeroDivisionError
Betekenis: Delen door nul is niet toegestaan.
Oplossing: Controleer of de deler verschillend is van 0.
SyntaxError
Betekenis: Er staat een fout in de schrijfwijze van de code.
Oplossing: Controleer dubbele punten, haakjes, aanhalingstekens en inspringing.
IndentationError
Betekenis: Inspringing van de code is ongeldig. Bv. bij niet inspringen na een if-block/ na een def.
Oplossing: Gebruik consequent 4 spaties per niveau.
NameError
Betekenis: Een variabele of functie bestaat niet, maar je roept hem wel op. Kan ook voorkomen
bij functies: variabelen die aangemaat worden in de functie zijn lokaal en kunnen enkel gebruikt
worden in de functie. Variabelen aangemaakt buiten de functie zijn global en kunnen ook
gebruikt worden in de functie. Als globale variabelen aangepast worden binnen een functie
wordt deze nieuwe waarde wel niet opgeslaan buiten de functie er is een nieuwe locale
variabele aangemaakt
Oplossing: Controleer de spelling en of de variabele eerst werd aangemaakt.
TypeError
Betekenis: Een bewerking wordt uitgevoerd op een ongeschikt datatype. Bv. een getal (int/
float) optellen bij een string.
Oplossing: Controleer de types en gebruik eventueel int(), str(), float(), enz.
Opmerking: float en integer kunnen wel gecombineerd worden. 2 strings ook, maar deze
worden gewoon aan elkaar geplakt.
Opmerking: als je een kommagetal schrijft met een komma i.p.v. een punt geeft hij in de
foutmelding weer dat je niet kan rekenen met een tuple!
AttributeError
Betekenis: Een object heeft het gevraagde attribuut of de methode niet. Bv. wanneer je een
string-methode gebruikt op een integer, of wanneer je een typfout hebt is de naam van je
methode/ een onbestaande methode gebruikt.
Oplossing: Controleer de naam van de methode en het datatype.
ZeroDivisionError
Betekenis: Delen door nul is niet toegestaan.
Oplossing: Controleer of de deler verschillend is van 0.