w tej klasie dowiesz się, czym jest słownik Pythona i jak go utworzyć. Nauczysz się również dodawać, aktualizować, usuwać i wyszukiwać elementy w obiekcie słownika.
słownik w Pythonie jest zbiorem obiektów. W przeciwieństwie do innych typów danych, takich jak lista lub zestaw, który ma jedno pole wartości, Typ słownika przechowuje klucz wraz z jego wartością.,
klucze parują z wartościami za pomocą dwukropka (:), podczas gdy przecinki działają jako separator dla elementów. Ponadto cały obiekt słownika używa nawiasów klamrowych, aby się zamknąć.
Poniżej znajduje się przykład jałowego obiektu słownika, który nie ma żadnych elementów.
#The empty Python dictionary object{}
pamiętaj, że tylko klucze wewnątrz słownika nie mogą mieć duplikatów, ale ich wartości mogą się powtarzać.
następnie wartość w słowniku może być dowolnego poprawnego typu danych Pythona. Ale klucze mają ograniczenie, aby być dowolnego niezmiennego typu danych, takiego jak ciąg znaków, Liczba lub krotka.,
słownik w Pythonie
tworzenie słowników
Jeśli chcesz utworzyć Słownik Pythona ze stałymi kluczami i wartościami, to jest to dość proste. Wystarczy połączyć wszystkie pary „key1: value1, key2: value2,…” i zamknąć klamrami.
kombinacja klucza i jego wartości, tj. „key: value” reprezentuje pojedynczy element słownika w Pythonie.
podczas definiowania statycznych obiektów słownika, należy uważać, aby używać unikalnych wartości dla kluczy. Mogą one jednak pochodzić z dowolnego poprawnego typu danych Pythona.,
Pamiętaj również, aby używać tylko niezmiennych typów danych dla wartości, podczas gdy mogą one mieć duplikaty.
Learn about – Python Strings
Dictionary Operations
Słownik Pythona ma klucz jako dodatkowy parametr. Możemy uzyskać dostęp do elementów słownika za pomocą kluczy, używając ich jako indeksu do operatora tablicy () lub przekazując jako Argument do metody get ().
obie metody będą działać tak samo, ale pierwsza zwróci KeyError, podczas gdy druga zwróci None, jeśli element nie jest dostępny.,
uruchomienie powyższego fragmentu kodu spowoduje następujące wyjście.
dict: Berrydict: 12dict: English
dostęp do elementu z nieistniejącym kluczem zwróci błąd. Sprawdź poniższy kod.
dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("dict: ", dict)
powyższy przykład używa nieistniejącego klucza „Name”. Uruchomienie tego samego wywołałoby ” KeyError.”
w następnym przykładzie uzyskamy dostęp do elementów w słowniku Pythona za pomocą funkcji get ().
Ten kod da następujący wynik.,
Berry12English
dołączanie do słownika
możesz dodać nowy element do istniejącego obiektu dict z elementami na dwa następujące sposoby.
przypisanie do dodawania elementów
>>> dict_append = {"1" : "Python", "2" : "Java"}>>> print(dict_append){'1': 'Python', '2': 'Java'}>>> dict_append = "CSharp">>> print(dict_append){'1': 'Python', '3': 'CSharp', '2': 'Java'}>>>
metoda aktualizacji do dodawania elementów
możesz wywołać metodę aktualizacji słownika, aby dodać do niego nowy element. Rozszerzamy powyższy przykład, patrz poniżej:
>>> dict_append.update({"4" : "JavaScript"})>>> print(dict_append){'1': 'Python', '3': 'CSharp', '2': 'Java', '4': 'JavaScript'}>>>
Aktualizuj Słownik
Python umożliwił zmianę obiektu słownika., W związku z tym dopuszczalne są operacje dodawania lub aktualizacji. Możesz wypchnąć nowy element lub zmodyfikować dowolny istniejący za pomocą operatora przypisania.
za każdym razem, gdy dodasz element, którego klucz już istnieje, jego wartość zostanie zmieniona na nową wartość. Po dodaniu nowej pary „klucz: wartość”, nowy element zostanie dodany do słownika.
użyj przypisania
w poniższym przykładzie demonstrujemy zarówno operacje aktualizacji, jak i dodawania istniejącego obiektu słownika.
wykonanie powyższego kodu da następujące wyjście.,
The student who left: BerryThe student who replaced: LarryThe student who joined: Jarry
użyj metody Update
możesz alternatywnie wywołać metodę update, aby zmodyfikować wartość dowolnego istniejącego elementu. Zobacz przykład poniżej.
kontynuujmy poprzedni przykład. Posiada obiekt dict, który zawiera klucz jako 'nazwa ucznia'. Zaktualizujemy jego wartość.
Usuń elementy
metod usuwania elementów ze słownika.
najczęstszą z nich jest metoda ” pop ()”. Przyjmuje klucz jako wejście i usuwa odpowiedni element ze słownika Pythona., Zwraca wartość powiązaną z kluczem wejściowym.
inną metodą jest ” popitem ()”. Usuwa i zwraca element losowy (klucz, wartość) ze słownika.
Jeśli chcesz usunąć wszystkie elementy ze słownika, użyj metody ” clear ()”, aby spłukać wszystko.
niemniej jednak, jednym ze sposobów usunięcia elementu ze słownika jest użycie słowa kluczowego del. Może pomóc w usunięciu poszczególnych elementów, a w konsekwencji całego obiektu słownika.
oto wynik uruchomienia powyższego fragmentu kodu.,
w powyższym przykładzie, drugie ostatnie polecenie usuwa wszystkie elementy ze słownika Pythona, pozostawiając je puste.
i kolejne wywołanie operatora „del” w obiekcie dictionary usuwa go całkowicie. W związku z tym Ostatnia Instrukcja print nie powiodła się z „NameError.”
Dowiedz się o Krotkach w Pythonie
atrybuty słownika
Python nie nakłada żadnych ograniczeń na” wartości ” obiektu słownika. Można je tworzyć za pomocą standardowego Pythona lub dowolnych niestandardowych typów danych., Ale, jak powiedzieliśmy wcześniej, ” klucze „nie są tym samym co” wartości ” i mają zupełnie inną obsługę.
dlatego ważne jest, abyś zapamiętał następujące dwa fakty dotyczące słownika „Klucze.”
- ten sam klucz nie może mieć innej wartości w słowniku. Potwierdza, że duplikat klucza nie może istnieć. Jednak nawet jeśli spróbujesz podać zduplikowany klucz, zmodyfikuje on istniejący klucz tylko z wartością podaną w ostatnim przypisaniu.
dict = {'Student Name': 'Berry', ' Roll No.,': 12,' Subject':'English',' Student Name':'Kerry'} print ("dict:", dict)
wykonanie powyższego kodu pokaże, że klucz” Student Name „zachowa ostatnią przypisaną wartość, np.” Kerry.”
dict: Kerry
- Python mówi, że klucze słownika powinny pochodzić z niezmiennych typów danych. Można wywnioskować, że tylko dozwolone typy to ciągi znaków, liczby lub krotki. Zobacz standardowy przykład poniżej.
dict = {: 'Berry', 'Roll No.,': 12, 'Subject': 'English'}print ("dict:", dict)
w powyższym przykładzie klucz używa typu list. Ponieważ Python tego nie obsługuje, polecenie wygeneruje ” TypeError.”
oto wynik powyższego przykładu.
Słownik iteracyjny
podobnie jak listy, możesz użyć pętli „for in”, aby przejść przez słownik. Ogólnie rzecz biorąc, to klucze umożliwiają iterację.
zrozummy to pojęcie na prostym przykładzie. Drukuje wszystkie klucze słownika w pętli.,
dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("Keys are:")for key in dict: print(key)
wynik powyższego kodu Pythona jest następujący.
Keys are:Student NameRoll No.Subject
wykonaj kolejny przykład poniżej, który wyświetla klucze wraz z wartościami.
dict = {'Student Name': 'Berry', 'Roll No.': 12, 'Subject': 'English'}print("{Keys}:{Values}")for key, value in dict.items(): print({key},":",{value})
wynik powyższego kodu Pythona jest następujący.
{Keys}:{Values}{'Student Name'} : {'Berry'}{'Roll No.'} : {12}{'Subject'} : {'English'}
rozumienie słownika
podobnie jak lista Pythona, Słownik umożliwia również rozumienie tworzenia nowych obiektów z iterowalnej pętli.,
można określić rozumienie słownikowe za pomocą wyrażenia zawierającego parę „klucz: wartość”, po której następuje pętla for i zamknięta klamrami {}.
postępuj zgodnie z poniższymi przykładami, aby utworzyć słownik przy użyciu składni rozumienia.
zróbmy obiekt słownika z typem string dla kluczy i formatem liczb dla wartości.
>>> {str(iter):iter for iter in }{'44': 44, '33': 33, '55': 55, '11': 11, '22': 22}
kolejny przykład tworzenia słownika z listy dni tygodnia jako kluczy i długości każdego tygodnia jako wartości.,
>>> weekdays = >>> {w:len(w) for w in weekdays}{'fri': 3, 'tue': 3, 'wed': 3, 'sat': 3, 'thu': 3, 'mon': 3, 'sun': 3}
możemy użyć funkcji „enumerate()” w słowniku. Pomaga nam to zapisać indeks konkretnego elementu, który moglibyśmy później wykorzystać. Ponadto w pętli for pozycja elementu listy nie jest widoczna bez „enumerate ().”
takie słowniki Pythona posiadające indeks elementów mogą być przydatne w wielu sytuacjach.
>>> {w : i for i, w in enumerate(weekdays)}{'fri': 5, 'tue': 2, 'wed': 3, 'sat': 6, 'thu': 4, 'mon': 1, 'sun': 0}
Test członkostwa
możemy szybko potwierdzić, czy klucz jest obecny w słowniku, czy nie używając słowa kluczowego „in.”Należy również pamiętać, że test członkostwa dotyczy tylko kluczy, a nie wartości.,
wynik powyższego fragmentu jest następujący.
TrueFalseTrue
Quick wrap up – Słownik Pythona
w tym samouczku omówiliśmy jeden z najważniejszych tematów w Pythonie. W dowolnej domenie Pythona zdecydujesz się pracować, znajomość słowników na pewno pomoże.
jeśli nauczyłeś się czegoś z tej lekcji, podziel się tym ze swoimi kolegami. Ponadto, połącz się z naszymi kontami w mediach społecznościowych (Facebook/Twitter), aby otrzymywać aktualne aktualizacje.
najlepsze,
TechBeamers