В качестве альтернативы ответу Габипа:
вы можете проверить, существует ли атрибут:
class Foo:
def __init__(self):
self.foo = "foo text"
>>> fooObj = Foo()
>>> fooObj.text
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'O' object has no attribute 'text'
>>> dir(o)
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'foo']
if "text" in dir(o):
print("has attr")
else:
print("does not have attr")
# prints: "does not have attr"