Basic structure of a class

# py:3.5
class Person(object):

    def __init__(self, name, gender):
        self.name = name
        self.gender = gender

    def get_name(self):
        return self.name

    def get_gender(self):
        return self.gender

    def __str__(self):
        return "%s is a %s" % (self.get_name(), self.get_gender())

###Subclassing

# py:3.5
class Citizen(Person):

    def __init__(self, name, country, gender):
        super.__init__(self, name, gender)
        self.country = country

    def get_nationality(self):
        return self.country

class SecretAgent(Citizen):

    def __init__(self, name, country, gender, isActive):
        super().__init__(name, country, gender)
        self.isActive = isActive
    # Method overriding
    def get_name(self):
        return "###Redacted###"

    def get_gender(self):
        return "###Redacted###"

    def get_nationality(self):
        return "###Redacted###"

    def get_status(self):
        return self.isActive
>>> jack = Citizen("Jack", "Tanzania", "Male")
>>> print jack.get_name()
Jack

>>> Light909 = SecretAgent("Jane", "Ukraine", "Female", False)
>>> Dark552 = SecretAgent("Jim", "Spain", "Male", True)
>>> print Light909.get_name()
###Redacted###

January 1, 2016


Previous post
Multi Item Import Here is a clean way to import multiple items from the same module
Next post
Creating String Pairs with Python Complete the solution so that it splits the string into pairs of two characters. If the string contains an odd number of characters then it should