Saksa numbrid.py
Appearance
Järgnev näide demonstreerib andmetüübi sõnastik kasutamist. Programmis seatakse omavahel vastavusse eestikeelsed ja saksakeelsed arvud ühest kuni 12-ni, esitatakse kasutajale eestikeelne arv ning küsitakse vastet saksa keeles. Edasi saab kasutaja teada, kas ta vastas õigesti.
# -*- coding: ISO-8859-4 -*-
# Dictionary (sõnastiku) näide.
# Sõnastik moodustatakse eesti ja saksakeelstest numbritest,
# pärast saab saksa keelt õppida :)
# Idee: on sõnastik, kus eesti sõna on võtmeks ja saksa vaste väärtuseks.
# Et eesti sõnu juhuslikult valida, teisendatakse võtmed listiks ja sealt valitakse
# suvaline element random.choice-funktsiooni abil.
# Edasi järgneb elementaarne kontroll ja kommentaar.
import random
# Kõigepealt tehakse valmis üks konstantne sõnastik. Andmed võiks tegelikult tekstifailist lugeda.
est2ger = {'üks':'ein','kaks':'zwei','kolm':'drei','neli':'vier','viis':'fünf','kuus':'sechs','seitse':'sieben','kaheksa':'acht','üheksa':'neun','kümme':'zehn','üksteist':'elf','kaksteist':'zwölf'}
print("Tere! Hakkan Sulle õpetama numbreid saksa keeles.")
print("Esialgu piirdume kaheteistkümne esimesega.")
print("Arvuti kirjutab numbri eesti keeles, Sina pead vastama saksa keeles.")
# Võtmetest (eesti sõnadest) tehakse list.
num = list(est2ger.keys()) # Tekib nn view, mis funktsiooni list() abil listiks teisendatakse
soov = "j"
while soov == "j":
# Suvalise sõna võtmine listist
arv = random.choice(num)
vastus = input(arv + ' ')
# Listist võetud sõna on sõnastikule nö indeksiks.
if est2ger[arv] == vastus:
print("Õige!")
else:
print("Vale! Õige vastus oleks", est2ger[arv])
soov = input("Kas jätkame? [j/e]")