Ändringar mellan två versioner
Här visas ändringar i "Läxa 3 (förberedelse för labb 4)" mellan 2013-01-30 11:54 av Linda Kann och 2013-01-30 11:55 av Linda Kann.
Läxa 3 (förberedlelse för labb 4)
I labb 4 ska du skriva ett program som använder en klass som du själv hittat på. Förberedelser:
* Läs Kap 8 i (om klasser) i kursboken.
* Gå igenom och provkör husdjursprogrammet (se nedan) så att du förstår hur det fungerar.
* Skriv sedan en egen klass (tillsammans med din gruppkompis) med minst fem attribut och metoder.
###################################################################################### klassen Husdjur ##########################################################################################class Husdjur(object): """ Ett virtuellt husdjur """ def __init__(self, djurnamn): """Konstruktorn""" self.namn = djurnamn self.glad = 0 self.hunger = 0 def __str__(self): sträng = self.namn sträng += ", " + str(self.glad) sträng += ", " + str(self.hunger) return sträng def visaStatus(self): """Visar husdjurets namn och hur det mår.""" print("\n", self.namn, "är ",end="") if self.glad > 0 and self.hunger < 3: print("glad: (^_^)") else: print("ledsen: (T_T)") def banna(self): """Ger husdjuret bannor. glad minskas.""" print("\n - Fy på dig", self.namn, "!") self.glad -= 3 def mata(self, mat): """Ger husdjuret mat. hunger minskas.""" print for i in range(mat): print("GLUFS",end=" ") self.hunger -= mat def leka(self): """Leker med husdjuret. glad och hunger ökar""" self.glad += 1 print("\n~~~~~~~~~~~ WHEEEEEEE! ~~~~~~~~~~~") self.hunger += 1 def avsked(self): """Skriver ut avskedet.""" print print("Hejdå,", self.namn, "kommer att sakna dig!")############################################################################################ funktioner ########################################################################################def utskriftstest(djur): """Testar olika sätt att skriva ut objektet""" print("------------ Test av utskrifter -----------") print("Anropar visaStatus: ", end = "") djur.visaStatus() print("Anropar __str__: ", end = "") print(djur) print("Anropar type: ", end = "") print(type(djur)) print("-------------------------------------------")def skötsel(djur): """Meny för djurskötsel""" svar = input(" Vill du \n banna \n mata \n leka med \n ditt husdjur? " ) while svar: if svar[0]=="m": bullar = int(input("Hur många bullar? ")) djur.mata(bullar) elif svar[0]=="b": djur.banna() elif svar[0]=="l": djur.leka() else: print("Hursa? ") djur.visaStatus() print(djur) svar = input(" Vill du \n banna \n mata \n leka med \n ditt husdjur? " ) def main(): djurnamn = input("Vad vill du döpa ditt husdjur till? ") djur = Husdjur(djurnamn) utskriftstest(djur) skötsel(djur) djur.avsked()main()