NoneType-Objekt hat in Python kein Attribut angefügt
Wir werden mit dieser Erklärung etwas über den NoneType-Fehler erfahren und sehen, welche Gründe es für diesen Fehler geben kann. Wir werden auch lernen, wie man diesen Fehler in Python behebt.
Beheben Sie den Fehler AttributeError: NoneType Object Has No Attribute Append
in Python
Beginnen wir damit, eine Liste mit dem Namen product_list
zu erstellen und einige Elemente in diese Liste einzufügen, dann fügen Sie ein weiteres Element hinzu. Wenn wir die Elemente überprüfen, funktioniert es ordnungsgemäß, aber wenn wir None
der product_list
zuweisen und dann versuchen, ein Element innerhalb dieser Liste anzuhängen, wird ein NoneType-Fehler ausgegeben.
>>> product_list=['x1','x2']
>>> product_list.append('x3')
>>> product_list
['x1', 'x2', 'x3']
>>> product_list=None
>>> product_list.append('x4')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'NoneType' object has no attribute 'append'
Dies liegt daran, dass die product_list
NoneType
ist, sodass wir nicht auf dieses Objekt zugreifen können, um das Element anzuhängen, und wir können diesen Objekttyp mit dem folgenden Befehl überprüfen.
>>> type(product_list)
<class 'NoneType'>
Dieser Fehler kann viele Gründe haben. Eine davon ist, wenn Sie versuchen, ein Element innerhalb der Liste anzuhängen und es in der Listenvariablen zu speichern, in der Sie ein neues Element anhängen.
Wenn Sie also das nächste Mal versuchen, ein neues Element anzuhängen, wird ein Fehler ausgegeben, der ein Nonetype-Fehler wäre.
>>> product_list=product_list.append('x3')
>>> product_list.append('x4')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'NoneType' object has no attribute 'append'
Ein Attribut kann man nicht nur anders anhängen, sondern wir können diesen Fehler auch beim Zugriff auf ein anderes Objekt bekommen. Wenn wir diesen Fehler erhalten (Objekt NoneType
hat kein Attribut xyz
), existiert das Attribut xyz
nicht in einem Objekt.
Mit dir()
können wir prüfen, ob das Objekt, auf das wir zugreifen wollen, existiert oder nicht. Das Attribut append()
existiert in dieser Liste nicht.
>>> dir(product_list)
['__bool__', '__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']
Aus irgendeinem Grund erhalten Sie in Python einen AttributeError
; Sie können die offizielle Dokumentation noch einmal überprüfen, um sicherzustellen, dass das, was Sie zu tun versuchen, etwas ist, das existiert. Manchmal könnte das beim Schreiben eines Python-Skripts gegen die Python-Regeln verstoßen; Deshalb erhalten wir diese Art von Fehler.
Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.
LinkedInVerwandter Artikel - Python Error
- Adresse wird bereits verwendet Fehler in Python
- AttributeError: __Exit__ in Python
- AttributeError: 'Dict'-Objekt hat kein Attribut 'Append' in Python
- AttributeError: 'NoneType'-Objekt hat kein Attribut 'Text' in Python
- AttributeError: Int-Objekt hat kein Attribut
- AttributeError: Modul Urllib hat keine Attributanforderung