Я переживаю «Изучение Python The Hard Way», и я добрался до урока класса. Я понял это (или, по крайней мере, думаю, что сделал!) И попытался создать простой вариант, используя свои собственные имена, функции и т. Д.Проблемы вывода наследования класса (Python)
Теперь проблема заключается в том, что код не будет верните что-нибудь в командной строке \ powershell. У него нет никаких ошибок, он просто переходит к другой строке ввода.
Вот код:
class Animal(object):
'''represents any animal'''
def __init__(self, legs, size):
self.legs = legs
self.size = size
def detail_animal(self):
'''show # of legs and size'''
print "Name: %r\nAge: %r" % (self.legs, self.size)
class canine(Animal):
'''represents a canine'''
def __init__(self, legs, size, hair_length):
Animal.__init__(self, legs, size)
self.hair_length = hair_length
def detail_canine(self):
Animal.detail(self)
print 'Has %r inch long hairs.' % self.hair_length
class feral_cat(Animal):
'''represents a feral cat'''
def __init__(self, legs, size, tail_length):
Animal.__init__(self, legs, size)
self.tail_length = tail_length
def detail_feral(self):
Animal.detail(self)
print "Tail Length: %r" % tail_length
c1 = canine(4, 2, 0.5)
c2 = canine(5, 3, 0.75)
fc1 = feral_cat(4, 5, 3)
a = Animal(4, 2)
Заранее спасибо!
Что вы ожидаете от этого? Вы никогда не называете какие-либо методы, которые могли бы печатать что-либо, поэтому ничего не печатается. – kindall
, чтобы расширить, о чем говорят, единственные функции, которые печатают что-либо, - это функции detail_ *. Вы строите кучу объектов, но не просите распечатать какую-либо деталь. – cmd
animal_detail также предполагает, что животное названо по его числу ног. –