Föreläsning 7 Programmeringsteknik och Matlab DD1315 Kommandotolk parametrar Klass Instans Metod konstruktor
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 1/11 Parametrar från kommando- tolken Vid start av ett program kan man få in strängar till programmet genom att använda fördefinierade listan sys.argv. datorn~> python prg.py arg1 arg2…
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 2/11 Exempel #encoding: latin-1 import sys print (”du startade det här programmet med”,\ len(sys.argv)-1,”parametrar” ) #encoding: latin-1 import sys print (”följande är en lista av parametrar:”) for param in sys.argv: print (param)
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 3/11 Missbruk av listor Listor är till för att innehålla en massa värde. Eftersom alla värde får ett index på en lista så passar de bra att kombinera med slingor. Man ska vara försiktig och inte missbruka listor för att hålla samman två värde.
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 4/11 Klass och instans (objekt) En klass är en mall för ett objekt t.ex. bil, konto Ett objekt är en instans av en klass t.ex. den röda bilen, mitt lönekonto
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 5/11 Fördela följande till klasser och objekt a)En bok b)Boken Java från grunden c)Min kopia av Java från grunden d)Min hund e)Bilden av min hund medan han biter postmannen f)En bil g)En Chrysler Klass och instans
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 6/11 class Kurs(object): pass Definition av en klass
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 7/11 k1 = Kurs() k1.bet = ”prgi09” print (k1.bet) k2 = Kurs() k2.bet=”datae09” print (k2.bet) Instansering
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 8/11 Konstruktor metod En konstruktor är en metod som skapar objekt av klassen. Konsruktorer är till för initiering av instansvariabler på ett smidigt sätt. En konstruktor definieras enligt nedan: def __init__(self, namn, beteckning): self.namn = namn self.bet = beteckning
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 9/11 Metod Metoder har samma syntax som funktioner med den skillnaden att de definieras i definition av en klass. Två metod typer: En instansmetod hör till instansen. En klassmetod hör till klassen(mer om detta i nästa föreläsning)
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 10/11 Skapa klass class Kurs(object): def __init__ (self, kod, beteckning): self.kurskod = kod self.bet = beteckning self.antal=0 def sattAntalStudenter(self,a): self.antal=a def geKod(self): return self.kurskod def geBeteckning(self): return self.bet def geAntal(self): return self.antal
Översikt Kommandotolk parametrar Klasser Definition Instansering Konstruktor metod Metod Exempel 11/11 Använd klassen k1 = Kurs(”DD1312”,”prgi08”) k2 = Kurs(”DD1343”,”datae08”) print (”Antal studenter i \ kursen”,k1.geBeteckning(), ”är”,k1.geAntal()) print (”Kursen”, k2.geBeteckning(),”har \ kurskoden”,k2.geKod())