Tavs šīs stundas izaicinājums: Pārveidot datu "jucekli" par skaistu saskarni. Tu iemācīsies izmantot for ciklus, lai "izķemmētu" sarakstus un vārdnīcas, parādot spēlētājam glītu inventāru, statusa ziņojumus un aprēķinot spēles progresu automātiski.
SR 2.4.14. (Ciklu izmantošana datu apstrādei)Iterācija ir process, kurā dators izpilda vienu un to pašu koda bloku katram kolekcijas elementam. Tas ir kā pārskaitīt visas monētas makā vienu pēc otras, nezinot iepriekš, cik to tur būs.
| Sintakse | Pielietojums | Rezultāts |
|---|---|---|
for x in saraksts: |
Sarakstiem | Piekļūst katram elementam (x) pēc kārtas. |
for a, v in dict.items(): |
Vārdnīcām | Ļauj izmantot gan atslēgu (a), gan vērtību (v) vienlaicīgi. |
for a in dict.keys(): |
Vārdnīcām | Piekļūst tikai nosaukumiem (atslēgām). |
Viss kods, kas atrodas "zem" for rindas un ir nobīdīts pa labi (4 atstarpes jeb 1 Tab), tiks atkārtots. Tiklīdz Tu beidz rakstīt ar atkāpi, cikls beidzas, un dators turpina lasīt kodu tālāk tikai vienreiz.
saraksts_cikls.py.inventars ar vismaz 4 priekšmetiem.nr = 1.for manta in inventars:, lai izvadītu katru lietu formātā: "1. [manta]".nr += 1!statusa_logs.py ar vārdnīcu varonis (Vārds, HP, Zelts).for atslega, vertiba in varonis.items():, lai piekļūtu abiem datiem reizē.HP ----> 100).print("=====") pirms un pēc cikla, lai izveidotu glītu rāmīti (šīm rindām jābūt bez atkāpes!).analize.py ar sarakstu cenas = [10, 55, 20, 80].kopa = 0.for cena in cenas:) pieskaiti katru vērtību pie kopa.if cena > 50: izvadi "Atrasta dārga manta!".len(cenas)).1. Pazudis kols: Neaizmirsti:rindas beigās pēcforteikuma.
2. Atkāpes kļūda: Ja kods nav nobīdīts pa labi, Python nezinās, ka tam jābūt cikla daļai un izpildīs to tikai vienreiz.
3. Items aizmirstība: Mēģinot iet cauri vārdnīcai bez.items()(tikaifor x in vardnica:), Tu iegūsi tikai atslēgu nosaukumus, nevis pašus datus.
# Glīta vārdnīcas izvade
statistika = {"Zelts": 150, "HP": 85, "XP": 1200}
print("--- TAVA STATISTIKA ---")
for nosaukums, skaitlis in statistika.items():
# Lietojam .upper(), lai atslēgas būtu ar lielajiem burtiem
print(f"{nosaukums.upper()}: {skaitlis}")
print("-----------------------")