Can someone show me how to code this correctly please?<br><br># Critter Caretaker<br># A virtual pet to care for<br><br>class Critter(object):<br> <br> """A virtual pet"""<br> def __init__(self, name, hunger = 0, boredom = 0):<br>
<a href="http://self.name">self.name</a> = name<br> self.hunger = hunger<br> self.boredom = boredom<br><br> # __ denotes private method<br> def __pass_time(self):<br> self.hunger += 1<br>
self.boredom += 1<br> self.__str__()<br><br> def __str__(self):<br> print("Hunger is",self.hunger, "Boredom is " ,self.boredom)<br> print("Unhappines is ",self.hunger + self.boredom," and Mood is ",self.mood)<br>
<br> <br> <br> @property<br> def mood(self):<br> unhappiness = self.hunger + self.boredom<br> if unhappiness < 5:<br> m = "happy"<br> elif 5 <= unhappiness <= 10:<br>
m = "okay"<br> elif 11 <= unhappiness <= 15:<br> m = "frustrated"<br> else:<br> m = "mad"<br> return m<br> <br> def talk(self):<br>
for critter in farmlet: <br> print("I'm", <a href="http://self.name">self.name</a>, "and I feel", self.mood, "now.\n")<br> self.__pass_time()<br> <br>
<br> def eat(self):<br> food = int(input("Enter how much food you want to feed your critter: "))<br> print("Brruppp. Thank you.")<br> self.hunger -= food<br> # hunger = 0 at iniatition<br>
# self.hunger = self.boredom - food<br> if self.hunger < 0:<br> self.hunger = 0<br> self.__pass_time()<br> <br><br> def play(self):<br> fun = int(input("Enter how much fun you want your critter to have: "))<br>
print("Wheee!")<br> self.boredom -= fun<br> # boredom = 0 at iniatition<br> # self.boredom = self.boredom - fun<br> if self.boredom < 0:<br> self.boredom = 0<br>
self.__pass_time()<br> <br><br>##class Farm(Critter):<br>## def __init__(self,farmlet):<br>## Critter.__init__(self,farmlet)<br>## self.farmlet = farmlet<br>##<br>## def talk(self,farmlet):<br>
## for critter in farmlet:<br>## print("Hello")<br>## Critter.talk(farmlet)<br><br>def main():<br> crit1 = Critter("Sweetie")<br> crit2 = Critter("Dave") <br>
farmlet = [crit1,crit2]<br> <br><br> choice = None <br> while choice != "0":<br> print \<br> ("""<br> Critter Caretaker<br> <br> 0 - Quit<br> 1 - Listen to your critter<br>
2 - Feed your critter<br> 3 - Play with your critter<br> """)<br> <br> choice = input("Choice: ")<br> print()<br><br> # exit<br> if choice == "0":<br>
print("Good-bye.")<br><br> # listen to your critter<br> elif choice == "1":<br> for critter in farmlet:<br> farmlet.talk()<br> <br> # feed your critter<br>
elif choice == "2":<br> farmlet.eat()<br> <br> # play with your critter<br> elif choice == "3":<br> f.play(farmlet)<br><br> # some unknown choice<br>
else:<br> print("\nSorry, but", choice, "isn't a valid choice.")<br><br>main()<br>("\n\nPress the enter key to exit.") <br><br><u><b>Output</b></u><br><br>Critter Caretaker<br>
<br> 0 - Quit<br> 1 - Listen to your critter<br> 2 - Feed your critter<br> 3 - Play with your critter<br> <br>Choice: 1<br><br>Traceback (most recent call last):<br> File "I:/Python/programs/critter_farm4.py", line 117, in <module><br>
main()<br> File "I:/Python/programs/critter_farm4.py", line 103, in main<br> farmlet.talk()<br>AttributeError: 'list' object has no attribute 'talk'<br clear="all"><br>-- <br>Dave Merrick<br>
<br><a href="mailto:merrickdav@gmail.com">merrickdav@gmail.com</a><br><br>Ph 03 3423 121<br>Cell 027 3089 169<br>