Spordikas failiga.py
Appearance
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 :)")