Spordikas failiga.py

From Wikiversity

11. nädala õpijuhis

Kopeeri järgnev programmikood Pythoni keskkonda

# -*- coding: ISO-8859-4 -*-
# Algus ülesandele "Spordipäev".
# Andmetena on teada õpilase nimi ja 100 m jooksu tulemus.
# Andmed on failis, mis on sellise struktuuriga nagu spaordikas.txt
# Leida:
# 1. Võitja nimi ja tulemus
# 2. Nime järgi saavutatud koht
# Kasutagem harjutamise mõttes funktsioone, mille päised on kirjas.
# Funktsioonide sisud tuleb endal juurde kirjutada.

import string

# NB! Funktsioon min on olemas. Leiab jadast vähimat väärtust! Aga teeme parema.
# Ideeks on, et saab määrata mitmenda sisemise listi elemendi järgi vähim leitakse.
# Vaikimisi tehakse seda 1. elemendi järgi.
def miinimum(jada,n):
    "Funktsioon vähima väärtuse leidmiseks jadas, mis koosneb jadadest. Sisendiks on uuritav jada ja n - element, mille järgi vähimat väärtust tuvastada."
    mini = jada[0]
    for element in jada:
        if element[n-1] < mini[n-1]:
            mini = element
    return mini



# Funktsiooni ideeks on võtta sisestatud nimi, leida jadast sellele nimele vastav tulemus ja
# tuvastada, mitmes koht selle tulemusega saavutati (arvestades, et parim tulemus on vähim tulemus).
def osaleja_koht(jada,nimi):
    "Funktsioon leiab sisestatud nime järgi jadast osaleja poolt saavutatud koha."
 

    print("Vabandused, osaleja koha funktsioon tuleb veel lisada!")

# Peaprogrammi algus
# Kasutusel on stringi funktsioon split, mis sisestatud stringi tükkideks teeb,
# vaikimisi on tükeldamiskohaks tühik.n Tükeldamise tulemuseks on list. Antud näites püütakse
# listi elemendid eraldi muutujatesse.
# Määrata ka muud eraldajat. Selleks tuleks see teiseks parameetriks kirjutada:
# string.split(rida,",") - eraldajaks on koma, tükeldatakse muutuja rida.

sport = []
print("Avame faili spordikas.txt, et lugeda sealt andmed.")
fm = open('spordikas.txt')
for rida in fm:
    nimi,tulemus = rida.split()
    sport += [[nimi,float(tulemus)]]
# Funktsioon kutsutakse välja sooviga leida vähim väärtus listi 2. elemendi ehk tulemuse järgi
print(sport)
v2him = miinimum(sport,2)
print(v2him)
koht = osaleja_koht(sport,"Maali")
# print(koht)
fm.close()
print("Täname kasutamast! Ilusat päeva jätku :)")

11. nädala õpijuhis