Długość słownika Python

Długość słownika Python

Słowniki Pythona to świetny sposób na posiadanie danych w postaci par kluczowych, podobnie jak JSON. Jednak zostanie dobrym programistą wymaga dobrego optymalizacji kodu i jego pracy. Aby to zrobić, pierwszym krokiem jest uświadomienie sobie wielkości elementów, których używasz, i zużycia pamięci, które zużywają.

Ten post będzie działał jako przewodnik po znalezieniu długości słowników Python i będzie zawierał następujące sekcje:

Metoda 1: Użyj metody len (), aby znaleźć długość słownika

Len () to wbudowana metoda stosowana do przeciwdziałania długości różnych elementów w Pythonie. Gdy ta metoda jest używana do znalezienia długości słownika Pythona, działa ona jako licznik i zwraca całkowitą liczbę par kluczowych w tym słowniku.

Aby zademonstrować zastosowanie metody len () w przypadku słownika Pythona, weź następujący kod:

dictvar = „Nazwa”: „John Doe”, „Age”: 20, „Social”: „Linuxhint”
druk (len (dictvar))

Kiedy ten kod zostanie wykonany, pokaże długość słownika jako:

Jak widać, metoda len () zwraca liczbę par kluczowych w słowniku, czyli „3”.

Metoda 2: Użyj metody len (), aby uzyskać długość zagnieżdżonego słownika

Jeśli próbujesz zastosować metodę len () na liście zagnieżdżonych, otrzymasz tylko liczbę nieżyty par kluczowych. Na przykład weź następujący kod:

dictvar = „Ludzie”:
„John”: „Doe”, „Johny”: „Wick”, „Rudy”: „Smith”,
'Żywność':
„Fast”: „burger”, „fastfood”: „Ham”, „steak”: „Medium”
druk (len (dictvar))

Uruchomienie tego kodu wydrukuje następujący wynik:

Ta odpowiedź nie jest ani dobra, ani zła. Jeśli mówisz o tym „dictvar”, ma on dwa elementy. Jeśli jednak mówisz o jego zagnieżdżonych elementach, ma on więcej elementów niż 2. W takich przypadkach musisz zastosować metodę len () na każdy element nadrzędny i sumować wynik:

dictvar = „Ludzie”:
„John”: „Doe”, „Johny”: „Wick”, „Rudy”: „Smith”,
'Żywność':
„Fast”: „burger”, „fastfood”: „Ham”, „steak”: „Medium”
print (len (dictvar [„ludzie”])+len (dictvar [„jedzenie”])))

Tym razem, gdy ten program zostanie wykonany, wyświetli liczbę zagnieżdżonych par kluczowych wartości jako:

Jak widać, liczba zagnieżdżonych par kluczowych wynosi 6.

Jeśli jednak chcesz znaleźć całą długość słownika, co oznacza długość słownika macierzystego i zagnieżdżonego słownika, po prostu użyj len () na słowniku macierzystym i dodaj go:

dictvar = „Ludzie”:
„John”: „Doe”, „Johny”: „Wick”, „Rudy”: „Smith”,
'Żywność':
„Fast”: „burger”, „fastfood”: „Ham”, „steak”: „Medium”
print (len (dictvar)+len (dictvar [„ludzie”])+len (dictvar [„jedzenie”])))))

Dzięki temu wyjście jest wyświetlane jako:

Wyjście to oznacza, że ​​istnieje w sumie 8 par kluczowych, zagnieżdżonych i nieżytych.

Metoda 3: Użyj metody isinstance (), aby uzyskać całą długość zagnieżdżonego słownika

Aby ustalić całą długość słownika, możesz również użyć metody isinstance () wraz z metodą len (. Metoda isinstance () sprawdza, czy wartość w pierwszym argumencie istnieje w podklasie.

Aby wykazać działanie metody isinstance () w celu znalezienia długości słownika, weź następujący kod:

dictvar = „Ludzie”:
„John”: „Doe”, „Johny”: „Wick”, „Rudy”: „Smith”,
'Żywność':
„Fast”: „burger”, „fastfood”: „Ham”, „steak”: „Medium”
długośćvar = len (dictvar)
dla Dictvar.wartości ():
Jeśli isinstance (a, dyct):
długośćvar += len (a)
wydruk („długość słownika to”, długośćvar)

Po wykonaniu tego kodu daje następujący wynik na terminalu:

Długość słownika wynosi „8”.

Metoda 4: Użyj metody BETISEOF (), aby uzyskać zużycie pamięci przez DICT

Jeśli chcesz wymyślić pamięć zużywaną przez słownik w bajtach, możesz skorzystać z metody BESISEOF (). Jednak, aby użyć tej metody, musisz zaimportować moduł „SYS”.

Aby zademonstrować działanie metody BEatizeOF (), użyj następującego fragmentu kodu:

Import Sys
dictvar = „Ludzie”:
„John”: „Doe”, „Johny”: „Wick”, „Rudy”: „Smith”,
'Żywność':
„Fast”: „burger”, „fastfood”: „Ham”, „steak”: „Medium”
Drukuj (sys.BETIZEOF (Dictvar))

To wydrukuje następujący wynik na terminalu:

Zgodnie z wyjściem pamięć zużywana przez słownik „Dictvar” wynosi 184 bajty.

Wniosek

Aby znaleźć długość zmiennej słownika w Pythonie, użytkownik może skorzystać z metody len (), która jest wbudowaną metodą. Ta metoda może również działać dla zagnieżdżonych słowników. Jednak w przypadku zagnieżdżonych słowników nie zwróci liczby par kluczowych zagnieżdżonych dykt. Aby uzyskać zużycie pamięci słownika, użytkownik może skorzystać z metody BEatsizeof () z pakietu „SYS”.