w tym samouczku dowiemy się, czym jest słownik? Jak można go stosować? oraz kilka przydatnych funkcji służących do manipulowania słownikiem.
słowniki są podobne do list z dodatkowym parametrem zwanym kluczami. Przypomnijmy, jak w listach i łańcuchach, użyliśmy indeksu jako parametru, aby uzyskać dostęp do każdego elementu łańcucha / listy., Głównym czynnikiem odróżniającym listę od słownika byłoby to, że zamiast indeksu używamy kluczy, aby uzyskać dostęp do elementów słownika (lub wartości, aby uzyskać dostęp do kluczy, działa w obie strony).
również, w przeciwieństwie do indeksu, klucze mogą być dowolnego typu danych, od liczby całkowitej do ciągu. Dzięki temu są bardziej elastyczne w użyciu.
Tworzenie słownika
ponieważ mamy elastyczność w dostarczaniu klucza dla każdego elementu w słowniku, będziemy musieli zdefiniować każdy klucz jawnie. Poniżej mamy słownik w formacie tabelarycznym. Dla każdego elementu w słowniku mamy przypisany do niego klucz.,
klucz | wartość |
---|---|
Klucz-1 | Element-1 |
Klucz-2 | |
Klucz-3 | element-3 |
klucz-4 | element-4 |
klucz-5 |
słownik w Pythonie może być utworzony jako:
>>> myDictionary = {'Key-1': 'Element-1', 'Key-2': 'Element-2', 'Key-3': 'Element-3', 'Key-4': 'Element-4'}
zwróć uwagę na klamry kręcone, które są tutaj używane, w przeciwieństwie do klamr kwadratowych na liście. Tutaj Klucz-1, Klucz-2… są kluczami dla elementu-1, elementu-2… odpowiednio., Dlatego, jeśli chcesz uzyskać dostęp do dowolnego elementu słownika, powinieneś znać klucz dla tego elementu. Na przykład, aby uzyskać dostęp do elementu klucza-3, po prostu użyj
>>>print( myDictionary);
’Element-3′
również w słowniku każdy element musi mieć unikalny klucz, ponieważ klucz jest używany do jednoznacznej identyfikacji każdego elementu słownika, jednak odwrotność nie jest prawdziwa, co oznacza, że elementy mogą być powtarzane, ale klucz musi być unikalny.,
słownik z klawiszami całkowitymi:
>>> integerDictionary = {10: "C++", 20: "Java", 30: "Python", 40: "Ruby", 50: "C#", 60: "Perl"}>>> print (integerDictionary);
„Python”
słownik z klawiszami ciągów:
StudyTonight: Best place to learn
aby utworzyć pusty słownik, wykonaj następujące czynności:
>>> emptyList = {}
powyższa linia kodu pomyślnie zainicjowała pusty słownik. Możemy łatwo dodać elementy do pustego słownika po jego inicjalizacji. Załóżmy, że chcesz dodać Delhi z key India do słownika, a następnie zrób to tak,
>>> emptyList = "Delhi"
i ten element zostanie dołączony do słownika.,
>>> print(emptyList);
{„India”: „Delhi”}
dostęp do elementów słownika
elementy zapisane w słowniku mogą być dostępne tak jak listy w Pythonie, tj. div>loop. Jednak podczas iteracji nad każdym elementem otrzymamy klucz, a nie wartość elementu, dlatego aby uzyskać dostęp do wartości elementu, musimy użyć klucza tak jak index, na przykład: myDictionary
.,
for i in myDictionary: print ("Key: " + i + " and Element: " + myDictionary);
usuwanie elementów w słowniku
elementy można usunąć za pomocą słowa kluczowegodel
, co jest podobne do tego, jak robi się to na liście. Na przykład, biorąc pod uwagę słownik szczegółów naszej strony,
>>> identity = {"name": "StudyTonight", "type": "Educational", "link": "http://studytonight.com", "tag": "Best place to learn"}
Jeśli chcemy usunąć klucz łącza i powiązaną z nim wartość, to
>>> del identity
usunie ten element.,
>>> print (identity);
{„name”: „StudyTonight”, „type”: „Educational”, „field”: „tag”: „Best place to learn”}
dołączanie elementów do słownika
Załóżmy, że chcesz dodać dodatkowy element do już zainicjowanej listy, która zawiera elementy, a następnie, wszystko, co musisz zrobić, to:
>>> identity
i zostanie dodany do słownika.
>>> print (identity);
{„name”: „StudyTonight”, „type”: „Educational”,”tag”: „Best place to learn”, „email”: „we@studytonight.,com”}
aktualizacja istniejących elementów w słowniku
funkcjaupdate()
służy do łączenia dwóch słowników w jeden. Wspólne wartości obu list zostają nadpisane przez ten drugi słownik. Załóżmy na przykład, że istnieje inny słownik zawierający listę dostępnych kursów na StudyTonight, wraz z listą użytą w powyższym przykładzie.,
teraz mamy 2 listy – identity
I courseAvail
>>> courseAvail = {"Java": "Full-course", "C/C++": "Full-course", "DBMS": "Full-course"}
Załóżmy, że chcemy skopiować wszystkie elementy courseAvail
do listy identity
, następnie musimy wykonać następujące czynności:
>>> identity.update(courseAvail)
uwaga: w tym przypadku słownik identity
zostanie zaktualizowany i nie będzie żadnego wpływu na słownik courseAvail
.