Tee tiedosto MyGreeting2.py ja kopioi sen sisällöksi:
class MyGreeting():
def __init__(self):
self.sGreeting = "Termos!"
def fnChangeGreeting(self, sNewGreeting):
self.sGreeting = sNewGreeting
def fnPrintGreeting(self):
print self.sGreeting
Tee testiscripti MyClassTest.py, jossa teet kolme vaihetta:
Kutsu luokan metodia "fnPrintGreeting" -> oletustervehdys "Termos!" tulostuu
Kutsu luokan metodia "fnChangeGreeting" vaihtaaksesi tervehdykseksi "Hei!"
Toista vaihe 1 -> näet nyt uutena tervehdyksenä "Hei!"
Täydennä harjoitusta 1 niin, että luokalla on myös metodi "sfnGetCurrentGreeting", joka palauttaa nykyisen tervehdyksen.
Testaa uusi metodi, vastaavasti kuin Harjoitus 1 testattiin.
Täydennä harjoitusta 1 niin, että perit luokasta "MyGreeting" uuden luokan nimeltä "MyGreetingChild", jossa ylimäärittelet funktion fnChangeGreeting niin, että se ei salli asettaa h-kirjaimella alkavaa uutta tervehdystä, vaan tulostaa virhetekstin ruudulle aliluokassa määritellyllä metodilla fnPrintError() (toteuta tämäkin metodi siis aliluokkaan).
Testaa uusi luokka kuten harjoitus 1 kohdalla, mutta varmistu, että et voi asettaa tervehdykseksi "hei", "heippa", tmv. h-alkuisia tervehdyksiä, mutta esim. "Moro" ja "Tere" menevät läpi.
Toteuta luokka "LapTimes" joka ylläpitää kirjaa ratakierrosajoista.
Joka kierroksen lopuksi Laptimes luokan oliolle kerrotaan uusi kierrosaika. Kun 5 kierrosta on täynnä, kysytään laptimes-luokalta mikä oli nopein kierros.
Käytä pohjana seuraavaa mallia:
tupLapTimes = (23, 22, 24, 22, 21)
for iLapTime in tupLapTimes:
<syota uusi kierrosaika oliolle tuplesta>
print "Nopein kierros kesti %d sekuntia" % <kysy nopein kierros oliolta>
Toteuta luokka "ToDoList" (tai useampi luokka tarpeen mukaan) joka ylläpitää listaa tehtävistä taskeista. Toteuta tämän (/näiden) varaan komentoriviohjelma, jonka avulla voit listata todo-listaan asioita, merkata niitä tehdyiksi, sekä poistaa listalta kokonaan. Todo-listan taskille tulee voida antaa takarajapäivä. Ohjelma tulostaa ensin listan taskit, joiden takarajapäivä tulee ensimmäisenä vastaan, lista siis näytetään näin riippumatta siitä missä päivämääräjärjestyksessä taskit on syötetty ohjelmaan.
Copyright © 2011-2017 ELOSOL