None is a built-in object that represents the absence of a value. It is often used as a placeholder value for variables that only
sometimes hold a value or as a return value for method calls that have no result.
Attributes and methods of symbols that sometimes can be None should only be accessed in circumstances where it is certain that they
are not set to None. Otherwise, an AttributeError is raised, and the program is interrupted. Hence, this issue indicates a
logical error as it results from incorrect assumptions about the state of variables or the results of computations.
What is the potential impact?
Issues of this type interrupt the normal execution of a program, causing it to crash or putting it into an inconsistent state. Therefore, this
issue might impact the availability and reliability of your application, or even result in data loss.
If a None value can be induced by user input, this issue may even be exploited by attackers to disrupt your application or gain
information from stack traces.
Exceptions
None does support a fixed set of special attributes like __class__ or __bool__, and this issue is not raised
when accessing these attributes.