7.5 Attributes and properties
Each polynomial created by UniPoly
has an
attribute named indeterminate
and another for terms
. These are the
instance variables we defined. UniPoly
also has attributes for
each instance method that you define or that Python creates for you. If obj
is a
Python object, then dir(object)
returns a list of attribute names.
"indeterminate" in dir(p)
True
"terms" in dir(p)
True
"__init__" in dir(p)
True
An instance variable is a read-write attribute, meaning that you can both get and set its
value with “.
” notation.
In your class design, you may wish to allow your users direct and public access to an
instance variable. If you do not, prefix the variable’s name with two underscores
“__
”. Python will rename the variable internally and make it more difficult, but
not impossible,...