class Hahmo: def __init__(self): self.nimi = 'Tuntematon' def Puhu(self, repliikki): print '%s: %s' % (self.nimi, repliikki) class Ihminen(Hahmo): def __init__(self, nimi): self.nimi = nimi self.koira = None def OtaVastuuKoirasta(self, koira): self.koira = koira def KavelytaKoiraa(self, matka): koira = self.koira if koira: koira.Kavele(matka) self.Puhu('%s käveli juuri %d kilometriä.' % (koira.nimi, matka)) else: self.Puhu('Mutta eihän minulla ole koiraa...') class Koira(Hahmo): def __init__(self, nimi): self.nimi = nimi self.kavellyt = 0 def Kavele(self, matka): self.kavellyt += matka def Hauku(self): self.Puhu('Hau hau! Olen kävellyt %d kilometriä.' % self.kavellyt) if __name__ == '__main__': ihmisen_nimi = raw_input('Anna ihmisen nimi: ') koiran_nimi = raw_input('Anna koiran nimi: ') print '' isanta = Ihminen(ihmisen_nimi) rekku = Koira(koiran_nimi) isanta.KavelytaKoiraa(7) rekku.Hauku() isanta.OtaVastuuKoirasta(rekku) isanta.KavelytaKoiraa(7) rekku.Hauku()