Arvutiteaduse instituut
  1. Esileht
  2. Python koolis
EN
Logi sisse

Python koolis

  • Sissejuhatus
  • Teemad

1. Paigaldamine
2. Kommentaarid
3. Muutujad
4. Andmetüübid
5. Sõned
6. Operaatorid
7. Sisend ja väljund
8. Tingimus
9. Tsükkel
10. Algoritm ja plokkskeem
11. Järjend
12. Sõnastik
13. Funktsioon
14. Failioperatsioonid
15. Moodulid
16. Objektid

  • PyGame
  • ÜLESANDED

11. Järjend

Järjend (inglise k. list) on andmetüüp loetelude tarvis. Järjenditega puutusime ülevaatlikult kokku ka for-tsükli teema juures. Järjend koosneb elementidest, mis ei pruugi tingimata olla üht tüüpi. Elemendid võivad järjendis korduda. Järjend ümbritsetakse nurksulgudega ja elemendid eraldatakse komadega.

arvud = [3, 6, 9, 12, 15, 9]
linnad = ["Tallinn","Tartu","Narva"]

Jada elementide poole pöördutakse nende järjekorranumbriga jadas, kusjuures esimene element on järjenumbriga (indeksiga) 0.

print(arvud[0]) # Väljund: 3
print(linnad[1]) # Väljund: Tartu

Operatsioonid järjenditega

  • jarjend.append(element) - elemendi lisamine järjendi lõppu (linnad.append("Pärnu"))
  • jarjend.remove(element) - eemaldab elemendi (esimese esinemise) järjendist (linnad.remove("Narva"))
  • jarjend.count(element) - konkreetse elemendi esinemiste arv (arvud.count(9) - tagastab arvu 2)
  • jarjend.index(element) - konkreetse elemendi indeks (linnad.index("Tartu") - tagastab arvu 1)
  • jarjend.sort() - elementide järjestamine kasvavas järjekorras
  • jarjend.reverse() - elementide järjekorra ümberpööramine
  • len(jarjend) - järjendi pikkus (len(arvud) - tagastab arvu 6)
  • min(jarjend) - kõige väiksem element (teksti puhul tähestikulises järjekorras esimene element) (min(linnad) - tagastab "Narva")
  • max(jarjend) - kõige suurem element (teksti puhul tähestikulises järjekorras viimane element) (max(arvud) - tagastab 15)
  • sum(arvud) - järjendi elementide summa (ainult arvude puhul) (sum(arvud) - tagastab 54)
  • element in jarjend - elemendi esinemise kontroll järjendis, tagastab tõeväärtuse (True või False) ("Tartu" in linnad - tagastab True)

Kui soovime pöörduda järjest kõigi järjendi elementide poole ükshaaval, võime kasutada tsüklit. Variante on mitu.

# muutuja linn saab väärtuseks
# iga tsüklitiiru ajal ühe linna järjendist
for linn in linnad: 
    print(linn)
linnadearv = len(linnad) 
for i in range(linnadearv): # i saab väärtusi 0-st kuni (linnadearv-1)-ni
    print(linnad[i])

Sarnaselt järjenditele saab ka sõnede puhul pöörduda sõnes olevate sümbolite kui järjendi elementide poole. Muuta sõne sümboleid sarnaselt järjendi elementidele ei saa.

sone = "Tere"
print(sone[2]) # Väljund: r

Näidisülesanne

Ülesanne. Koosta kolm järjendit, millest üks koosneb lause aluseks sobivatest sõnadest, teine öeldistest, kolmas sihitistest. Väljasta kõikvõimalikud laused nende järjendite põhjal kujul "<alus> <öeldis> <sihitis>" (näiteks "Poiss jooksis koju").

Lahendus. Koostame kolm järjendit (need ei pruugi olla sama pikkusega), kusjuures jälgime, et aluste ja öeldiste puhul oleks tegemist ainult kas ainsuses või mitmuses sõnadega, sihitised võiksid sobida kõigi öeldistega. Aga ei pea, siis ongi naljakam.

alused = ["Tüdruk", "Poiss", "Auto", "Kala", "Siga"]
oeldised = ["jooksis", "roomas", "sõitis", "ujus", "lendas"]
sihitised = ["koju", "kooli", "metsa", "külili"]

Meil oleks vaja võtta igast järjendist sõnu ja kombineerida neid iga teise järjendi iga sõnaga. Seega on vaja mitmekordset tsüklit, kus üks muutuja saaks järjest väärtusi ühest järjendist, teine teisest jne.

for alus in alused:
    for oeldis in oeldised:
        for sihitis in sihitised:
            print(alus, oeldis, sihitis)

Creative Commons litsentsiga Autorile viitamine + Mitteäriline eesmärk 3.0 Eesti (CC BY-NC 3.0 EE) - https://creativecommons.org/licenses/by-nc/3.0/ee/

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused