CodeGym /Kursy /Python SELF PL /Sprawdzanie obecności elementu w słowniku

Sprawdzanie obecności elementu w słowniku

Python SELF PL
Poziom 11 , Lekcja 4
Dostępny

4.1 Sprawdzanie obecności klucza w słowniku

Istnieje kilka sposobów, aby sprawdzić, czy klucz znajduje się w słowniku, każdy z nich ma swoje cechy i zastosowania.

Operator in

Najbardziej popularnym i skutecznym sposobem sprawdzania obecności klucza w słowniku jest użycie operatora in. Ta metoda zwraca True, jeśli klucz jest obecny w słowniku, i False w przeciwnym przypadku.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Sprawdzamy obecność kluczy "name" i "country" w słowniku
print("name" in person)  # Wyświetli: True
print("country" in person)  # Wyświetli: False

# Przykład użycia w operatorze warunkowym
if "age" in person:
    print("Klucz 'age' jest obecny w słowniku.")
else:
    print("Klucz 'age' jest nieobecny w słowniku.")

Metoda get()

Metoda get() pozwala bezpiecznie uzyskać wartość dla klucza, zwracając None lub określoną domyślną wartość, jeśli klucz jest nieobecny. Możesz użyć tej metody, aby sprawdzić obecność klucza, sprawdzając, czy zwraca None.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Uzyskujemy wartość dla klucza "age"
value = person.get("age")

# Sprawdzamy, czy klucz "age" jest obecny w słowniku
if value is not None:
    print("Klucz 'age' jest obecny w słowniku.")
else:
    print("Klucz 'age' jest nieobecny w słowniku.")

Metoda keys()

Metoda keys() zwraca widok wszystkich kluczy słownika. Możesz sprawdzić obecność klucza, używając operatora in do iteracji po tym widoku.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Sprawdzamy obecność klucza "name" w widoku kluczy słownika
if "name" in person.keys():
    print("Klucz 'name' jest obecny w słowniku.")
else:
    print("Klucz 'name' jest nieobecny w słowniku.")

4.2 Sprawdzanie obecności wartości w słowniku

Jeśli chcemy sprawdzić, czy słownik zawiera określoną wartość przypisaną do klucza, to istnieje kilka prostych sposobów:

Użycie metody values()

Metoda values() zwraca widok wszystkich wartości w słowniku. Możesz użyć operatora in do sprawdzenia obecności wartości w tym widoku.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Sprawdzamy obecność wartości 25 w słowniku
if 25 in person.values():
    print("Wartość 25 jest obecna w słowniku.")
else:
    print("Wartość 25 jest nieobecna w słowniku.")

Użycie funkcji set()

Możesz przekształcić widok wartości w zbiór i następnie użyć operatora in do sprawdzenia obecności wartości.


person = {"name": "Alice", "age": 25, "city": "New York"}

# Przekształcamy widok wartości w zbiór
values_set = set(person.values())

# Sprawdzamy obecność wartości "New York" w zbiorze wartości
if "New York" in values_set:
    print("Wartość 'New York' jest obecna w słowniku.")
else:
    print("Wartość 'New York' jest nieobecna w słowniku.")

Użycie generatora

Możesz użyć generatora do sprawdzenia obecności wartości w słowniku. To zapewnia bardziej zwięzły i czytelny kod.


person = {"name": "Alice", "age": 25, "city": "New York"}
value_to_find = 25

# Używamy generatora do sprawdzenia obecności wartości
if any(value == value_to_find for value in person.values()):
    print(f"Wartość {value_to_find} jest obecna w słowniku.")
else:
    print(f"Wartość {value_to_find} jest nieobecna w słowniku.")

Obiekty, które zwraca values(), mogą nie być unikalne, dlatego przy poszukiwaniu wielu elementów może być pomocne najpierw przekształcić je w zbiór, a następnie pracować ze zbiorem elementów.

Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION