Classes

Larry Hudson orgnut at yahoo.com
Thu Oct 30 17:28:19 EDT 2014


On 10/30/2014 01:16 PM, Seymore4Head wrote:
> class pet:
>      def set_age(self,age):
>          self.age=age
>      def get_age(self):
>          return self.age
> pax=pet
> pax.set_age(4)
>
> Traceback (most recent call last):
>    File "C:\Functions\test.py", line 18, in <module>
>      pax.set_age(4)
> TypeError: set_age() missing 1 required positional argument: 'age'
>
> I am trying to pass 4 as the age.  Obviously I am doing it wrong.
>
You have already received the answer -- pax=pet should be pax=pet(), but I have a simple 
side-comment about style.  It is common Python convention to capitalize class names, IOW make 
this class Pet instead of class pet.  This is convention not a requirement, but it does help 
distinguish class names from ordinary variable names -- especially to others reading your code 
(as well as yourself a few days later).   ;-)

      -=- Larry -=-




More information about the Python-list mailing list