Iterowanie po słownikach
Część sekcji Podstawy ścieżki GDScript w Coddy. Lekcja 81 z 92.
Pętla for przechodząca po słowniku zwraca jego klucze w kolejności, w jakiej dodano pary. Użyj każdego klucza, aby odczytać jego wartość:
var stock := {"apples": 3, "pears": 5, "plums": 2}
for fruit in stock:
print(fruit, ": ", stock[fruit])Wynik to:
apples: 3
pears: 5
plums: 2Gdy potrzebujesz tylko wartości, użyj pętli po values(). Ta pętla sumuje wszystkie owoce:
var total := 0
for amount in stock.values():
total += amount
print(total) # 10Słownik może też zliczać elementy. Dla każdego słowa funkcja get(word, 0) zwraca dotychczasowy wynik albo 0, gdy słowo pojawia się po raz pierwszy:
var counts := {}
for word in ["gold", "gem", "gold"]:
counts[word] = counts.get(word, 0) + 1
print(counts) # { "gold": 2, "gem": 1 }Wyzwanie
ŁatwyProgram odczytuje jeden wiersz danych wejściowych: łup zebrany przez gracza, rozdzielony przecinkami, na przykład gold,gem,gold.
Policz, ile razy każdy przedmiot występuje w słowniku o nazwie counts. Następnie wypisz każdy przedmiot i jego liczbę w formacie item: count, po jednym w wierszu, w kolejności pierwszego wystąpienia.
Dla danych wejściowych gold,gem,gold,potion,gold wynikiem jest:
gold: 3
gem: 1
potion: 1Spróbuj swoich sił
extends Node
func _ready():
var loot := OS.read_string_from_stdin().split(",")
var counts := {}
# Policz każdy element w counts
# Wypisz każdy element i jego liczbę wystąpień
pass
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 1
Operatory arytmetyczneDzielenie całkowiteOperator moduloSkrócone operatory arytmetycznePodsumowanie — prosta matematykaOperatory porównania7Podstawowe wejście/wyjście
WyjścieWyjście ze zmiennymiFormatowanie ciągów znakówWejścieRzutowanie typówPowtórka — do 120Powtórka — prawda czy fałsz10Funkcje
Deklarowanie funkcjiArgumentyZwracanie wartościTypy zwracanych wartościPowtórka — funkcja sigmaPowtórka — funkcja walidującaWartości domyślne5Operatory — część 2
Operatory logiczne — część 1Operatory logiczne — część 2Powtórka — podstawy logikiOperatory logiczne — część 3Operator warunkowy8Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych14Zaawansowane tablice
Wycinanie fragmentów tablicyOperatory sekwencjiPrzynależnośćSortowanie i odwracanie3Zmienne, część 2
Deklarowanie typówWnioskowanie o typachStałePowtórka — inicjalizacja zmiennychKonwersja typów6Podejmowanie decyzji
Instrukcja ifIf - elsePowtórka – prosty kalkulatorZagnieżdżone if - elseInstrukcja match9Pętle
Pętla forPętla whilePrzerwijKontynuujPowtórka — silniaFunkcja rangePętla zagnieżdżonaPowtórka — dane wejściowe dynamiczne12Podstawy tablic
Deklarowanie tablicyDostęp do elementów tablicyModyfikowanie tablicMetody tablicPowtórka – tablica iloczynówPowtórka – odwrócona tablicaTablice typowane15Słowniki
Tworzenie słownikówDostęp do wartościModyfikowanie słownikówMetody słownikówIterowanie po słownikachPodsumowanie — słownik inwentarzaPoćwicz samodzielnie: Kompilator GDScript online