Słowniki (dictionary)
Stronę tą wyświetlono już: 11127 razy
Słowniki to tak zwane listy asocjacyjne, które cechują się tym, że nie są indeksowane tak jak listy tylko i wyłącznie kolejnymi liczbami całkowitymi, ale mogą być indeksowane liczbami zmiennoprzecinkowymi lub tekstem.
Tworzenie pustego słownika
Istnieje kilka sposobów na utworzenie pustego słownika, oto pierwszy z nich:
i drugi:
Inicjalizacja słownika z elementami
Oto przykład utworzenia słownika z przypisaniem mu elementów:
Wynik działania:
{'Arek': 3000, 'Ania': 1200, 'Ola': 1300}
Warto zauważyć, że elementy zostały wyświetlone w zupełnie innej kolejności niż zostały dodane do słownika.
Tworzenie słownika z dwóch list
Oto przykład utworzenia słownika z wykorzystaniem dwóch list i funkcji zip:
Wynik działania:
{'Arek': 3000, 'Ola': 1300, 'Ania': 1200}
Odwoływanie się do pojedynczego elementu słownika
Poprzez klucz:
Wynik działania:
1200
Za pomocą metody wewnętrznej get:
Wynik działania:
1200 None brak wpisu
Iterowanie po słowniku
Słowniki są jak najbardziej iterowalne, a więc można zrobić coś takiego:
Wynik działania:
Arek Ola Ania
Jak widać, w trakcie iterowania dobraliśmy się do indeksów słownika, natomiast nie uzyskaliśmy informacji o zawartości, która się tam znajduje. Tę zawartość można uzyskać w dwojaki sposób:
Wynik działania:
Arek:3000 Ola:1300 Ania:1200
Choć powyższy kod działa poprawnie, to każdy szanujący się pythonauta powie: tak się nie robi! Więc zróbmy to tak, jak się to robi, czyli:
Wynik będzie taki sam co poprzednio.
Uaktualnianie danych w słowniku za pomocą metody wewnętrznej update
Metoda update wstawia dodatkowe wpisy do słownika a jeżeli dany klucz wpisu istnieje, to uaktualnia zawartość tego wpisu.
Wynik działania:
{'Arek': 3000, 'Ania': 2000, 'Ola': 1300, 'Damian': 4500}
Dodawanie wpisu, gdy ten nie występuje w słowniku za pomocą metody wewnętrznej setdefault.
Oto jak można dodać element do słownika, gdy ten nie występuje:
Wynik działania:
{'Arek': 3000, 'Ania': 2000, 'Ola': 1300} {'Arek': 3000, 'Ania': 2000, 'Ola': 1300, 'Damian': 4500}
Sprawdzanie, czy podany klucz istnieje w słowniku za pomocą in.
Wynik działania:
Ania jest w słowniku!
Sprawdzanie, czy podany klucz i wartość istnieje w słowniku za pomocą in.
Wynik działania:
Tak Ania zarabia 1200 $!
Sprawdzanie, czy dana wartość istnieje w słowniku za pomocą in.
Wynik działania:
Tak, ktoś tu zarabia 1200 $!
Usuwanie elementu słownika.
Za pomocą metody wewnętrznej pop można usunąć wpis w słowniku o podanym kluczu z jednoczesnym zwróceniem samej wartości kryjącej się pod tymże kluczem:
Wynik działania:
1200 {'Arek': 3000, 'Ola': 1300}
Za pomocą metody wewnętrznej popitem można usunąć ostatni wpis słownika z jednoczesnym zwróceniem klucza i wartości w postaci krotki:
Wynik działania:
('Arek', 3000) {'Ania': 1200, 'Ola': 1300}
Czyszczenie słownika za pomocą metody wewnętrznej clear:
Wynik działania:
{}
Tworzenie kopii słownika za pomocą metody wewnętrznej copy:
Wynik działania:
{} {} {'Arek': 3000, 'Ania': 1200, 'Ola': 1300}
Liczba elementów znajdujących się w słowniku:
Sposób pierwszy za pomocą funkcji len:
Wynik działania:
3
Drugi sposób, za pomocą wewnętrznej metody __len__:
Tytuł:
Python w analizie danych. Przetwarzanie danych za pomocą pakietów pandas i NumPy oraz środowiska Jupyter. Wydanie III
Autor:
Wes McKinney
Tytuł:
Machine learning, Python i data science. Wprowadzenie
Autor:
Andreas Müller, Sarah Guido
Tytuł:
Python zorientowany obiektowo. Programowanie gier i graficznych interfejsów użytkownika
Autor:
Irv Kalb
Tytuł:
Python na start! Programowanie dla nastolatków
Autor:
Michał Wiszniewski
Tytuł:
Sztuczna inteligencja w finansach. Używaj języka Python do projektowania i wdrażania algorytmów AI
Autor:
Yves Hilpisch
Tytuł:
Python w zadaniach. Programowanie dla młodzieży. Poziom podstawowy
Autor:
Urszula Wiejak, Adrian Wojciechowski
Tytuł:
Python i praca z danymi. Przetwarzanie, analiza, modelowanie i wizualizacja. Wydanie III
Autor:
Avinash Navlani, Armando Fandango, Ivan Idris
Tytuł:
Black Hat Python. Język Python dla hakerów i pentesterów. Wydanie II
Autor:
Justin Seitz, Tim Arnold
Tytuł:
Python z życia wzięty. Rozwiązywanie problemów za pomocą kilku linii kodu
Autor:
Lee Vaughan
Tytuł:
Python i AI dla e-commerce
Autor:
Sebastian Kondracki