SZUKAMY β-testerów Ścieżki Kariery Programisty AI! Zapisz się TU.

Podstawowe struktury danych w Pythonie – słowniki
Cykl artykułów: Po przeczytaniu kilku krótkich artykułów i przerobieniu kilku krótkich plików na colabie, zrozumiesz i nauczysz się obsługiwać trzy kluczowe podstawowe struktury danych w Pythonie – listy, słowniki i zestawy tak, by następnie móc z nimi pracować i wywołać na nich podstawowe metody.
Wstęp
Jeśli kiedykolwiek korzystał_aś z Javy, C++ lub JS, prawdopodobnie przewijały się tam takie konstrukcje jak ArrayList, HashMap czy HashSet. W Pythonie ich odpowiednikami są kolejno listy, słowniki i zestawy.
Gdyby porównać programistów do szefów kuchni, to te struktury danych byłyby jak trzy podstawowe noże, których używasz każdego dnia. Jeden z nich jest to warzyw, drugi do mięsa, a trzeci do krojenia chleba – Niby nóż to nóż, ale wybierasz ten, który w danym momencie najlepiej odpowiada Twoim potrzebom.
Spis treści
Słowniki (dict)
Definicja
W Pythonie słownik (ang. dictionary) to uporządkowana kolekcja par „klucz: wartość”, gdzie klucze muszą być unikalne i niezmienne, a wartości mogą być dowolnym obiektem. Słowniki są często używane do przechowywania i odwoływania się do danych za pomocą nazw, a nie indeksów.
Cechy słownika
- Klucz: To element, który służy do identyfikacji wartości. Może być to liczba, ciąg znaków, krotka, ale nie może to być lista.
- Wartość: To obiekt przechowywany w słowniku, powiązany z kluczem.
- Iterowanie: Można iterować po kluczach, wartościach lub parach klucz-wartość używając keys(), values() i items().
- Od Pythona 3.7 słowniki zachowują kolejność dodawania (podobnie jak LinkedHashMap w Javie).
- Słowniki vs. listy: Słowniki są bardziej efektywne w przypadku, gdy potrzebujesz odwołać się do danych za pomocą unikalnego identyfikatora (klucza), a listy są bardziej odpowiednie, gdy elementy są indeksowane numerami.
- Słowniki vs. zestawy: Zestawy (sets) przechowują tylko unikalne elementy, bez powiązanych wartości, podczas gdy słowniki przechowują pary klucz-wartość.
Podstawowe metody i ich zachowanie
| Metoda | Opis | Mutuje oryginał? | Zwraca |
| d[k] = v | Dodaje lub nadpisuje parę | ✔️ | Wartość v |
| d.get(k, default) | Bezpieczny odczyt | ❌ | Wartość lub default |
| d.pop(k[, default]) | Usuwa i zwraca wartość pod k | ✔️ | Wartość lub default |
| d.update(other) | Masowe dodanie/aktualizacja | ✔️ | None |
| d.keys() | Widok kluczy | ❌ | Widok – iterowalny |
| d.values() | Widok wartości | ❌ | Widok |
| d.items() | Widok (klucz, wartość) | ❌ | Widok |
| d.copy() | Płytka kopia | ❌ | Kopia słownika |
Kiedy stosować?
| Sytuacja | Dlaczego słownik? |
| Musisz odwzorować identyfikator → dane | Dostęp w O(1) po haszu klucza. |
| Łapiesz dane z API JSON | Naturalnie odwzorowują się na dict. |
| Potrzebujesz licznika elementów | Użyj collections.Counter (specjalizacja słownika). |
To tyle, jeśli chodzi o teorię. Teraz czas na praktykę. Zajrzyj do naszego notatnika Colab, gdzie znajdziesz dokładne wytłumaczenie wszystkich podstawowych (i nieco bardziej zaawansowanych) metod związanych z listami.
Możesz skopiować lub pobrać notatnik, by móc uruchomić go dla siebie i pobawić się listami.
Na końcu notatnika znajdziesz 3 zadania.
Zrób je, a jeśli będziesz mieć jakieś pytania, daj znać w komentarzach (tylko nie spoiluj rozwiązaniami zadań – niech inni też mają chwilę zabawy!).
Jeśli opanowałeś materiał z Colaba, przejdź do następnego artykułu na temat zestawów.
Co dalej?
→ Zapisz się do naszego newslettera, żeby nigdy nie przegapić żadnego wartościowego artykułu.
→ Zajrzyj do sekcji Kariera w AI, gdzie znajdziesz konkretne materiały o zmianach na rynku pracy – w Polsce i na świecie – oraz ścieżkach kariery związanych ze sztuczną inteligencją (nie tylko jako programista!).
→ A jeśli chcesz pisać modele i pracować jako Architekt AI, ale nie wiesz, od czego zacząć (lub utknąłeś gdzieś na ścieżce), odwiedź dział Nauka AI – czeka tam wiedza, ciekawostki i realne wsparcie.
! Uwaga
Niniejszy ebook ma charakter informacyjny i edukacyjny. Nie stanowi porady prawnej ani oferty pracy w rozumieniu przepisów krajowych lub unijnych.
Przy tworzeniu niniejszego artykułu korzystano ze wsparcia narzędzi opartych na sztucznej inteligencji – m.in. w zakresie porządkowania treści, analizy źródeł, przyspieszenia redakcji i wyszukiwania źródeł Jednak wszelkie decyzje dotycząca treści, interpretacji i ostatecznej formy zostały podjęte przez człowieka.




[…] Jeśli przerobiłeś_aś cały materiał, pędź do kolejnego artykułu na temat słowników. […]