Toteuta funktio "sfnValueInEnglish", joka saa seuraavat 2 vertailuoperaatiota tulostamaan ruutuun 'True' (vertailu on tosi -> boolean arvo True tulostuu ruutuun).
Rajoite: funktion sisällä tulee käännöstaulua (joka kertoo mikä teksti vastaa mitäkin nroa) pitää dictionary-muuttujassa.
sfnValueInEnglish(1) == "one"
sfnValueInEnglish(2) == "two"
Toteuta funktio "fnGetSmallestAndBiggest", jonka ainoa argumentti on lista-tyyppiä ja pitää sisällään int-tyyppisiä arvoja (käytä ao. listaa).
Funktio palauttaa sekä listan pienimmän että suurimman alkion (molemmat siis kerralla).
lstValues = [1, 5, 7, 8, 9, 12, 33, 2, 16]
Toteuta funktio "lstfnGetTxtFiles", joka palauttaa listan .txt-loppuisista tiedostoista (jotka löytyvät ajohakemistosta), jotka alkavat kirjaimella, mikä on annettu funktion argumenttina.
Rajoite/vinkki: ensimmäinen rivi: import glob
Voit testata ratkaisuasi esim. näin (jos funktiosi toimii oikein, suorituksen ei pitäisi mennä koskaan else-haaraan):
sChar = "a"
for sFile in lstfnGetTxtFiles(sChar):
if sFile.startswith(sChar) and sFile.endswith(".txt"):
print "File ok: " + sFile
else:
print "Wrong file returned: " + sFile
Toteuta funktio "sfnPadWithChar", joka tekee sisään syötetystä stringistä vakiopituisen - 8 merkkiä, lisäten alkuun riittävän määrän täytemerkkejä. Täytemerkki annetaan funktioon toisena argumenttina.
Rajoite: Et saa käyttää hyväksesi String-metodeita rjust() tai ljust().
Voit testata ratkaisusi näin:
assert sfnPadWithChar("aa", "-") == "------aa"
assert sfnPadWithChar("aapeli", "+") == "++aapeli"
Toteuta funktio "fnGreet", joka palauttaa (ei tulosta, kuten kuvaus oli aiemmin) oletuksena "Hei <argumenttina annettu nimi>!".
Tervehdysosa em. tulosteesta haetaan funktion oletusargumentista, jonka arvo on "Hei".
Voit testata ratkaisusi näin:
assert fnGreet(sName="Jari") == "Hei Jari!"
assert fnGreet(sGreeting="Terve", sName="Jari") == "Terve Jari!"
assert fnGreet(sGreeting="Moi", sName="Jari") == "Moi Jari!"
Toteuta funktio "lstCatenateLists", joka paluuarvonaan palauttaa sille syötetyt listat yhdistettynä yhdeksi listaksi.
funktion tulee tarkistaa, että jokainen funktion argumentti on listatyyppinen. Jos jokin argumentti ei ole listatyyppiä, tästä tulostetaan virheilmoitus ja funktio palauttaa silloin listan: [-99999999]
Rajoite: tutki funktioon syötettyjä tietotyyppejä funktion argumentilla *args.
Voit testata ratkaisusi ao. koodeilla:
assert lstCatenateLists([1,2], [4,5], [6,7], [8,1]) == [1,2,4,5,6,7,8,1]
assert lstCatenateLists([9,2], [4,5]) == [9,2,4,5]
assert lstCatenateLists([9,2], (4,5)) == [-99999999]
assert lstCatenateLists("not a list", [9,2]) == [-99999999]
Copyright © 2011-2017 ELOSOL