Kurs Rozwoju w Pythonie
Rozdział
>
Poziom

### Using Dictionaries Słowniki w Pythonie to struktury danych, które przechowują pary klucz-wartość. Pozwalają one na szybki dostęp do danych poprzez klucz, co czyni je bardzo użytecznymi w różnych zastosowaniach programistycznych. #### Tworzenie słownika Aby utworzyć słownik, użyjemy nawiasów klamrowych `{}` i ustawimy pary klucz-wartość za pomocą dwukropka `:`. ```python my_dict = { 'a': 1, 'b': 2, 'c': 3 } ``` #### Dostęp do wartości Możemy uzyskać dostęp do wartości w słowniku poprzez podanie klucza w nawiasach kwadratowych. ```python value = my_dict['a'] # Zwraca 1 ``` #### Dodawanie lub aktualizowanie elementów Możesz dodawać nowe pary klucz-wartość do słownika lub aktualizować istniejące, przypisując wartości do kluczy. ```python my_dict['d'] = 4 # Dodanie nowego klucza 'd' my_dict['a'] = 5 # Aktualizacja istniejącego klucza 'a' ``` #### Usuwanie elementów Aby usunąć element ze słownika, użyj słowa kluczowego `del`. ```python del my_dict['b'] # Usuwa klucz 'b' ``` #### Iterowanie przez słownik Możesz iterować przez klucze, wartości lub pary klucz-wartość w słowniku. ```python for key in my_dict: print(key) # Drukuje klucz for value in my_dict.values(): print(value) # Drukuje wartość for key, value in my_dict.items(): print(key, value) # Drukuje klucz i wartość ``` #### Sprawdzenie istnienia klucza Możesz sprawdzić, czy klucz istnieje w słowniku, używając słowa kluczowego `in`. ```python if 'a' in my_dict: print("Klucz 'a' istnieje") ``` Korzystanie ze słowników jest wygodnym sposobem na zarządzanie danymi i uzyskiwanie szybkiego dostępu do informacji, gdy znasz odpowiednie klucze.
Tworzenie własnych funkcji przy użyciu słowników

Cel

Użyj funkcji niestandardowej, która przechodzi przez pole, sadząc i podlewając uprawy.

Pole ma kilka drzew, które trzeba posadzić, złap torbę zawierającą nasiona, a następnie uzupełnij wodę przy studni. Użyj funkcji niestandardowej z słownikiem, aby przejść przez pole, posadzić i podlać nasiona.

Zdobądź torbę z nasionami, która zapewni Ci następujące nasiona drzew w słowniku: "orange : 3" , "pear : 4" , "apple : 3" , "peach : 2" . Idź do oświetlonego oznaczenia X obok studni i użyj funkcji collect(), aby zgromadzić wodę, w ten sposób: player.collect("water") .

Gdy zbierzesz wszystkie niezbędne materiały, utwórz funkcję niestandardową o nazwie sow_field używającą nasion i wody do sadzenia i nawadniania pola. Funkcja niestandardowa przyjmuje trzy (3) argumenty, są to: tree , loops i direction . Korzystając z tych argumentów, funkcja wykona pętlę for do nawadniania pola.

def sow_field(tree,loops,direction): for x in range(loops): if direction == "right": player.move_forward(2) player.turn_left() player.plant(seeds,tree) player.water() player.turn_right() player.move_forward() if direction == "left": player.move_forward() player.turn_right() player.plant(seeds,tree) player.water() player.turn_left() player.move_forward(2)

Pierwszy argument, tree to nazwa klucza używana w słowniku, są to "orange" , "pear" , "apple" i "peach" . Wybierz odpowiednią nazwę podczas sadzenia.

Kolejny argument to loops, który określa liczbę cykli, przez które chcesz, aby funkcja była wykonywana. Jest to równe liczbie nasion każdego typu na polu. Ostatnim argumentem jest direction, to "left" i "right" , wybierz kierunek, w którym chcesz, aby gracz się poruszał podczas wykonywania funkcji.

Przejdź do najbardziej wysuniętej na północ części mapy po zebraniu wody i użyj funkcji niestandardowej, w ten sposób: sow_field("orange", 3, "right") . Zrób to dla wszystkich nasion drzew, aby ukończyć poziom.

Księga Kodów