Python dla początkujących – Podstawy programowania – Słownik [4]

Słownik Python – czym jest i jak się go używa?

W tej lekcji dowiesz się czym są słowniki w Pythonie.

Co to jest słownik w Pythonie?

Słownik w Pythonie to nieuporządkowany i zmienny zbiór wartości danych, który przechowuje pary klucz-wartość. Każda para klucz-wartość w słowniku mapuje klucz na skojarzoną z nim wartość, dzięki czemu jest bardziej zoptymalizowany. Słownik w Pythonie jest deklarowany przez załączenie listy par klucz-wartość rozdzielonych przecinkami przy użyciu nawiasów klamrowych ({}). Słownik Pythona dzieli się na dwa elementy: klucze i wartości.

Klucze będą jednym elementem
Wartości mogą być listą lub listą w liście, liczbami itp.

Składnia słownika w Python:

Dict = { ' Tim': 18,  xyz,.. }

Słownik znajduje się w nawiasach klamrowych, wewnątrz tych nawiasów klamrowych deklarowane są klucze i wartości. Każdy klucz jest oddzielony od jego wartości dwukropkiem (:), podczas gdy przecinki oddzielają każdy element.

Właściwości klawiszy słownika

Podczas korzystania z klawiszy słownika są dwa ważne punkty

Więcej niż jeden wpis na klucz jest niedozwolony (nie można zduplikować klucza)
Wartości w słowniku mogą być dowolnego typu, podczas gdy klucze muszą być niezmienne, takie jak liczby, krotki lub ciągi.
Klucze słownika rozróżniają wielkość liter — ta sama nazwa klucza, ale z różnymi wielkościami liter jest traktowana jako różne klucze w słownikach Pythona.

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}   
print((Dict['Tiffany']))
  • W kodzie mamy nazwę słownika „Dict”
  • Zadeklarowaliśmy imię i wiek osoby w słowniku, gdzie imię to „Klucze”, a wiek to „wartość”
  • Teraz uruchom kod
  • Pobiera ze słownika wiek Tiffany.

Metody słownika Pythona

Kopiowanie słownika

Możesz także skopiować cały słownik do nowego słownika. Na przykład tutaj skopiowaliśmy nasz oryginalny słownik do nowej nazwy słownika „Chłopcy” i „Dziewczyny”.

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
studentX=Boys.copy()
studentY=Girls.copy()
print(studentX)
print(studentY)

Aktualizacja słownika

Słownik można również zaktualizować, dodając nowy wpis lub parę klucz-wartość do istniejącego wpisu lub usuwając istniejący wpis. W tym przykładzie dodamy inną nazwę, „Sarah” do naszego istniejącego słownika.

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Dict.update({"Sarah":9})
print(Dict)

Usuwanie kluczy ze słownika

Słownik Pythona daje Ci możliwość usunięcia dowolnego elementu z listy słowników. Załóżmy, że nie chcesz, aby imię Charlie znalazło się na liście, więc możesz usunąć kluczowy element za pomocą następującego kodu.

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
del Dict ['Charlie']
print(Dict)

Sprawdź, czy dany klucz już istnieje w słowniku

Dla danej listy możesz również sprawdzić, czy nasz słownik podrzędny istnieje w słowniku głównym, czy nie. Tutaj mamy dwa podsłowniki „Chłopcy” i „Dziewczyny”, teraz chcemy sprawdzić, czy nasz słownik Chłopcy istnieje w naszym głównym „Dict”, czy nie. W tym celu używamy metody pętli for z metodą else if.

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
for key in list(Boys.keys()):
    if key in list(Dict.keys()):
        print(True)
    else:       
        print(False)
  • Forloop w kodzie sprawdza każdy klawisz w głównym słowniku pod kątem kluczy Boys
  • Jeśli istnieje w głównym słowniku, powinien wypisać prawdę, w przeciwnym razie powinien wypisać fałsz
  • Kiedy wykonasz kod, wyświetli on trzy razy „Prawda”, ponieważ mamy trzy elementy w naszym słowniku „Chłopcy”
  • Oznacza to, że „Chłopcy” istnieją w naszym głównym słowniku (Dict)

Sortowanie słownika

W słowniku możesz również sortować elementy. Na przykład, jeśli chcemy wydrukować nazwy elementów naszego słownika alfabetycznie, musimy użyć pętli for. Odpowiednio posortuje każdy element słownika.

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
Students = list(Dict.keys())
Students.sort()
for S in Students:
      print(":".join((S,str(Dict[S]))))
  • Zadeklarowaliśmy zmienną studentów dla naszego słownika „Dict”.
  • Następnie używamy kodu Students.sort, który posortuje element wewnątrz naszego słownika
  • Ale aby posortować każdy element w słowniku, uruchamiamy pętlę for, deklarując zmienną S
  • Teraz, gdy wykonamy kod, pętla for wywoła każdy element ze słownika i wyświetli ciąg i wartość w kolejności

Wbudowane funkcje słownika Pythona

Funkcja len() podaje liczbę par w słowniku.

Dla przykładu:

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("Length : %d" % len (Dict))

Typy zmiennych

Python nie wymaga jawnego deklarowania rezerwowej przestrzeni pamięci; dzieje się to automatycznie. Używane są wartości przypisane do zmiennej „=” znak równości. Kod określający typ zmiennej to „%type (Dict)”.

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("variable Type: %s" %type (Dict))
  • Użyj  %type, aby poznać typ zmiennej
  • Po wykonaniu kodu, konsola mówi nam że jest to typ słownikowy.

Słownik Str(dict)

Za pomocą metody Str() możesz przekształcić słownik w string.

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("printable string:%s" % str (Dict))

a

MetodaOpisSkładnia
copy()Skopiuj cały słownik do nowego słownikadict.copy()
update()Zaktualizuj słownik, dodając nowy wpis lub parę klucz-wartość do istniejącego wpisu lub usuwając istniejący wpis.Dict.update([other])
items()Zwraca listę par krotek (Klucze, Wartość) w słownikudictionary.items()
sort()Możesz sortować elementy
len()Podaje liczbę par w słownikulen(dict)
cmp()Porównaj wartości i klucze dwóch słownikówcmp(dict1, dict2)
Str()Stwórz słownik w formacie tekstowym do wydrukowaniaStr(dict)

Scalanie słowników

Tutaj zrozumiesz, jak połączyć dwa podane słowniki w jeden słownik.

Mam dwa słowniki, jak pokazano poniżej:

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

oraz:

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

Połączmy oba te słowniki my_dict1 i my_dict2 i utwórzmy jeden słownik o nazwie my_dict.

Połącz dwa słowniki za pomocą metody update()

Metoda update() pomoże nam połączyć jeden słownik z drugim. W tym przykładzie zaktualizujemy my_dict1 o my_dict2. Po użyciu metody update() my_dict1 będzie zawierała zawartość my_dict2 jak pokazano poniżej:

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Warszawa"}

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

my_dict1.update(my_dict2)

print(my_dict1)

Wyjście:

{'username': 'XYZ', 'email': 'xyz@gmail.com', 'location': 'Warszawa', 'firstName': 'Nick', 'lastName': 'Price'}

Test obecności w słowniku

Możesz sprawdzić, czy klucz jest obecny w słowniku, czy nie. Ten test można wykonać tylko na kluczu słownika, a nie na wartości. Test członkostwa odbywa się za pomocą słowa kluczowego in. Po sprawdzeniu klucza w słowniku za pomocą słowa kluczowego in wyrażenie zwraca prawdę, jeśli klucz jest obecny, i fałsz, jeśli nie.

Oto przykład, który pokazuje test statku członkowskiego w słowniku.

my_dict = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Warszawa"}
print("email" in my_dict)
print("location" in my_dict)
print("test" in my_dict)

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *