class Animal():
def __init__(self, given_parameter="rat", animal_name="nameless"):
if isinstance(given_parameter, str):
self.species_name = given_parameter
self.stomach_contents = []
self.animal_name = animal_name
elif isinstance(given_parameter, Animal) :
self.species_name = given_parameter.species_name
self.stomach_contents = given_parameter.stomach_contents
else :
print("\n Unacceptable object was given to Animal constructor.")
def feed(self, food_for_this_animal):
if type(food_for_this_animal) == str:
self.stomach_contents = [self.stomach_contents + food_for_this_animal].append() + ", "
else:
self.stomach_contents = [self.stomach_contents+ food_for_this_animal.species_name].append() + ", "
def make_speak(self):
if len(self.stomach_contents) == 0:
print("\n Hello, I am a " + self.species_name + " " + "named" + " " +self.animal_name + "." + "\n My stomache is empty" + "\n")
else:
print("\n Hello, I am a " + self.species_name + " " + "named" + " " +self.animal_name + "." + "\n I have eaten: " + self.stomach_contents + " " "\n")
a = Animal()
worm = Animal("worm", "Jordan")
cat = Animal("cat")
cat.feed = ["something"]
cat.feed = [worm]
a.make_speak()
cat.make_speak()
print(cat.stomach_contents)
Y2xhc3MgQW5pbWFsKCk6CgogICAgZGVmIF9faW5pdF9fKHNlbGYsIGdpdmVuX3BhcmFtZXRlcj0icmF0IiwgYW5pbWFsX25hbWU9Im5hbWVsZXNzIik6CiAgICAgICAgaWYgaXNpbnN0YW5jZShnaXZlbl9wYXJhbWV0ZXIsIHN0cik6CiAgICAgICAgICAgIHNlbGYuc3BlY2llc19uYW1lID0gZ2l2ZW5fcGFyYW1ldGVyCiAgICAgICAgICAgIHNlbGYuc3RvbWFjaF9jb250ZW50cyA9IFtdCiAgICAgICAgICAgIHNlbGYuYW5pbWFsX25hbWUgPSBhbmltYWxfbmFtZQogICAgICAgIGVsaWYgaXNpbnN0YW5jZShnaXZlbl9wYXJhbWV0ZXIsIEFuaW1hbCkgOgoKICAgICAgICAgICAgc2VsZi5zcGVjaWVzX25hbWUgPSAgZ2l2ZW5fcGFyYW1ldGVyLnNwZWNpZXNfbmFtZQogICAgICAgICAgICBzZWxmLnN0b21hY2hfY29udGVudHMgPSBnaXZlbl9wYXJhbWV0ZXIuc3RvbWFjaF9jb250ZW50cwogICAgICAgIGVsc2UgOgogICAgICAgICAgICBwcmludCgiXG4gVW5hY2NlcHRhYmxlIG9iamVjdCB3YXMgZ2l2ZW4gdG8gQW5pbWFsIGNvbnN0cnVjdG9yLiIpCgogICAgZGVmIGZlZWQoc2VsZiwgZm9vZF9mb3JfdGhpc19hbmltYWwpOgogICAgICAgIGlmIHR5cGUoZm9vZF9mb3JfdGhpc19hbmltYWwpID09IHN0cjoKICAgICAgICAgICAgc2VsZi5zdG9tYWNoX2NvbnRlbnRzID0gW3NlbGYuc3RvbWFjaF9jb250ZW50cyArIGZvb2RfZm9yX3RoaXNfYW5pbWFsXS5hcHBlbmQoKSArICIsICIKICAgICAgICBlbHNlOgogICAgICAgICAgICBzZWxmLnN0b21hY2hfY29udGVudHMgPSBbc2VsZi5zdG9tYWNoX2NvbnRlbnRzKyBmb29kX2Zvcl90aGlzX2FuaW1hbC5zcGVjaWVzX25hbWVdLmFwcGVuZCgpICsgIiwgIgoKICAgIGRlZiBtYWtlX3NwZWFrKHNlbGYpOgogICAgICAgIGlmIGxlbihzZWxmLnN0b21hY2hfY29udGVudHMpID09IDA6CiAgICAgICAgICAgIHByaW50KCJcbiBIZWxsbywgSSBhbSBhICIgKyBzZWxmLnNwZWNpZXNfbmFtZSArICIgIiArICJuYW1lZCIgKyAiICIgK3NlbGYuYW5pbWFsX25hbWUgKyAiLiIgKyAiXG4gTXkgc3RvbWFjaGUgaXMgZW1wdHkiICsgIlxuIikKICAgICAgICBlbHNlOgogICAgICAgICAgICBwcmludCgiXG4gSGVsbG8sIEkgYW0gYSAiICsgc2VsZi5zcGVjaWVzX25hbWUgKyAiICIgKyAibmFtZWQiICsgIiAiICtzZWxmLmFuaW1hbF9uYW1lICsgIi4iICsgIlxuIEkgaGF2ZSBlYXRlbjogIiArIHNlbGYuc3RvbWFjaF9jb250ZW50cyArICIgIiAiXG4iKQoKCgoKYSA9IEFuaW1hbCgpCndvcm0gPSBBbmltYWwoIndvcm0iLCAiSm9yZGFuIikKY2F0ID0gQW5pbWFsKCJjYXQiKQpjYXQuZmVlZCA9IFsic29tZXRoaW5nIl0KY2F0LmZlZWQgPSBbd29ybV0KYS5tYWtlX3NwZWFrKCkKY2F0Lm1ha2Vfc3BlYWsoKQpwcmludChjYXQuc3RvbWFjaF9jb250ZW50cyk=