How to Get Rid of an Attribute Error in Python

By Rodney Lewis

Python attribute errors can be easy to debug.
i Comstock/Comstock/Getty Images

When the Python interpreter cannot find a specified data or method attribute on an object that allows for attribute references, it will raise an "AttributeError" exception. When you get an attribute error in Python, it means you tried to access the attribute value of, or assign an attribute value to, a Python object or class instance in which that attribute simply does not exist.

Check to make sure the attribute reference or assignment in question is spelled correctly. Any variation in spelling will cause an attribute error exception to be thrown. Sometimes an "i" can look like an "l." In Python, object and variable names are case-sensitive. There are many letters in the alphabet that can be mistaken for their upper or lowercase counterpart.

Verify that the original class definition and its child class definitions make sense. The error may not actually be in the line of code indicated by the interpreter but somewhere else in the code, as is possible with many other types of errors.

Confirm that the Python object actually has the data or method attribute you are trying to use via the documentation freely at the Python Software Foundation ( It's easy to get mixed up when dealing with all the objects and their corresponding data and methods.

See if the exception thrown was within error handling code. As with all error handling, a given exception can be thrown for any reason or no reason at all. Examine the code carefully to determine what the original author's intent was by throwing the "AttributeError" exception. It might be more of a logic error than a syntax error.