Was ist ein Fehler?
Wenn wir in Programmiersprachen Code auf ungültige Weise ausführen, wird die Ausführung des Programms mit einer Meldung gestoppt und diese Meldung wird als Fehler oder Ausnahme bezeichnet. Es gibt aus unterschiedlichen Gründen bestimmte Arten von Fehlern in einer Programmiersprache. Einige davon sind wie folgt:
Behauptungsfehler:
Diese Art von Fehler tritt auf, wenn Assertionsbedingungen oder Anweisungen im Code fehlschlagen.
Java-Sortierliste
Importfehler:
Dieser Fehler tritt auf, wenn wir ein Modul in die Datei importieren und dieses Modul nicht vorhanden ist.
Indexfehler:
Es tritt auf, wenn der Index einer Sequenz außerhalb des Bereichs liegt.
Schlüsselfehler:
Dieser Fehler wird in Python ausgelöst, wenn wir keinen Schlüssel im Wörterbuch finden können.
Namensfehler:
Dieser Fehler kann auftreten, wenn wir im lokalen oder globalen Bereich keine Variable finden.
Laufzeit Fehler:
Dieser Fehler wird ausgelöst, wenn der Fehler keinem Typ zugeordnet werden kann.
Einrückungsfehler:
Wenn wir im Python-Code die falsche Einrückung verwenden, tritt IndentationError auf.
Java-Aufzählungen
Systemfehler:
Wenn ein interner Fehler vorliegt, wird SystemError vom Interpreter ausgelöst.
Unicode-Fehler:
Wenn ein Codierungs- oder Decodierungsfehler im Zusammenhang mit Unicode vorliegt, wird UnicodeError ausgelöst.
Python-sortiertes Tupel
ValueError:
Wenn wir in einer Funktion das richtige Argument entsprechend dem Datentyp übergeben, der Wert jedoch nicht korrekt ist, heißt der aufgetretene Fehler ValueError.
ZeroDivisionError:
Wie wir wissen, können wir in der Mathematik keine Zahl durch Null dividieren, da das Ergebnis gegen Unendlich tendiert. Wenn wir also eine Anweisung zur Division durch Null oder Modulo durch Null geschrieben haben, wird der Fehler „ZeroDivisionError“ ausgegeben.
EOFError:
Wenn wir die Funktion „input()“ verwenden, um die Eingabe aus einer Datei abzurufen, und wir das Ende der Datei erreichen, wird dieser Fehler ausgelöst, um anzuzeigen, dass wir das Ende der Datei erreicht haben und wir nun keine Eingaben mehr annehmen können Eingabe aus der Datei.
Dieser Artikel ist hauptsächlich dem AttributeError gewidmet.
Was ist AttributeError?
Dieser Fehler tritt im Programm auf, wenn bei der Attributzuweisung ein Konditionierungsfehler vorliegt. Wenn wir beispielsweise einer ganzzahligen Variablen einen Wert zuweisen und versuchen, eine Zeichenfolgenfunktion dieser Variablen zu verwenden, wird der AttributeError ausgelöst.
Anhand der folgenden Beispiele können wir den Grund für AttributeError in Python verstehen:
Beispiel 1:
Wenn wir eine Funktion auf einen anderen Datentyp anwenden, ist das nicht möglich
a=15 a.append('javatpoint')
Ausgabe:
Erläuterung:
Im obigen Code haben wir eine Ganzzahlvariable und haben sie mit dem Wert 15 initialisiert. Wenn wir nun die Append-Funktion für die Variable a verwenden, wird der AttributeError ausgegeben, der besagt, dass es kein Attribut als Append gibt im Integer-Datentyp.
Beispiel2:
Es besteht die Möglichkeit eines AttributeError, wenn das Attribut falsch geschrieben ist.
Auswahl sortieren Java
string = 'you will learn each coding tutorial from '.fst('Javatpoint') print(string)
Ausgabe:
Erläuterung:
Im obigen Code haben wir ein String-Attribut und wenden das fst-Attribut an, sodass ein AttributeError auftritt, der besagt, dass dieses Attribut für die Variable nicht vorhanden ist.
Beispiel3:
Wir können den AttributeError erhalten, wenn wir versuchen, eine falsche Referenz für eine Klassenvariable zu erstellen.
class Javatpoint(): def __init__(self): self.var1 = 'This is for JavatPoint' obj = Javatpoint() print(obj.var1) print(obj.var2)
Ausgabe:
Erläuterung:
Im obigen Code haben wir eine Klasse und eine Variable namens var1. Wir erstellen das Objekt der Klasse und verweisen versehentlich auf die falsche Variable var2 dieser Klasse, die überhaupt nicht existiert, sodass es definitiv einen AttributeError geben wird.
Die Lösung zur Behebung des Fehlers oder der Ausnahme:
In Python oder in jeder anderen Programmiersprache können wir Ausnahmen oder Fehler mithilfe von Try- und Except-Anweisungen behandeln.
Zeichenfolge hinzufügen
Beispiel 4:
class Javatpoint(): def __init__(self): self.var1 = 'This is for javatpoint' obj = Javatpoint() try: print(obj.var1) print(obj.var2) except AttributeError: print('There is no such attribute')
Ausgabe:
Erläuterung:
Im obigen Code haben wir eine Klasse und eine Variable namens var1. In der try-Anweisung versuchen wir, auf var1 und var2 zu verweisen. Wir können die Variable 1 dereferenzieren und die Anweisung dafür ausgeben, erhalten aber den AttributeError für die Referenzierung der Variable 2. Das Programm geht also in den Except-Block und wir geben die Anweisung aus, die nur für die Fehlerbedingung geschrieben wird.