Guest User

Untitled

a guest
Apr 20th, 2018
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.71 KB | None | 0 0
  1. Du har en "bas" som alla delar, d.v.s. alla produkter delar vissa typer av egenskaper:
  2.  
  3. namn, tillverkare, pris, produktnummer, vikt
  4.  
  5. Sen finns det olika typer av medie som du kan få produkten i t.ex.:
  6.  
  7. digitalt, cd/dvd, hårdvara
  8.  
  9. För vissa av ovanstående behöver du ha specialregler när du räknar ut t.ex. pris, i fallet av hårdvara lägger vi på lite pengar om vikten överstiger ett visst tal.
  10.  
  11. Med denna informationen kan vi definiera en klass på följande vis:
  12.  
  13. class produkt(object):
  14.     def __init__(self):
  15.         self.namn = ""
  16.         self.tillverkare = ""
  17.         self.pris = 0
  18.         self.produktnummer = 0
  19.         self.vikt = 0
  20.     def getPrice(self):
  21.        
  22.  
  23. att vi skriver (object) betyder att klassen "Ärver" d.v.s utökar typen "object", då objekt är en vanlig bastyp betyder detta egentligen ingenting i nuläget.
  24.  
  25. Vi lägger sedan på attributen på klassen genom att säga "self" som betyder "mig själv" och sedan namnet på den "globala" variabel vi vill definiera.
  26.  
  27. När man gör en funktion som getPrice, så sätter man första inparametern till klassen själv. Även om vi bara kallar på den via produktInstans.getPrice() sedan, så kommer första parametern bli "produktInstans".
  28.  
  29. Nu kan vi skapa nästa medium som t.ex. hårdvara såhär:
  30.  
  31. class hardvara(product):
  32.     def __init__(self):
  33.         self.namn = "moderkort"
  34.     def getPrice(self):
  35.         if(self.vikt > 25):
  36.            return self.price + 200;
  37.         return self.price
  38.  
  39. Nu har vi skapat en specialregel för när vi kallar på getPrice på en instans av hardvara, där vi lägger på 200:- om vikten överstiger 25.
  40.  
  41. Nu kan du skapa en produkt av typen hårdvara såhär:
  42.  
  43. moderkort = hardvara()
Add Comment
Please, Sign In to add comment