Operatory tożsamości w Pythonie

Operatory tożsamości w Pythonie są używane do porównywania miejsc w pamięci dwóch zmiennych. Są dwa operatory tożsamości: is oraz is not. Używane są one do sprawdzania, czy dwie zmienne odnoszą się do tego samego obiektu, czyli czy mają tę samą tożsamość. Jest to szczególnie istotne, kiedy pracujemy z mutowalnymi typami danych, takimi jak listy, słowniki, zbiory, czy też z obiektami definowanymi przez użytkownika, gdzie dwie różne zmienne mogą wskazywać na ten sam obiekt w pamięci.

Przykłady użycia operatorów tożsamości

W poniższym przykładzie przedstawiamy różne przypadki użycia operatorów tożsamości w języku Python, wyjaśniając krok po kroku działanie każdego z nich.

# Przykład 1: Porównywanie liczb
numberA = 10
numberB = 10
# Sprawdzamy, czy numberA i numberB wskazują na ten sam obiekt
print(numberA is numberB)  # Wypisze True, ponieważ obie zmienne
                           # wskazują na tę samą lokację w pamięci

# Przykład 2: Porównywanie list
listA = [1, 2, 3]
listB = [1, 2, 3]
# Sprawdzamy, czy listA i listB wskazują na ten sam obiekt
print(listA is listB)  # Wypisze False, ponieważ mimo identycznej
                       # zawartości, są to różne obiekty w pamięci

# Przykład 3: Użycie `is not`
listC = listA
# Sprawdzamy, czy listA i listC NIE wskazują na ten sam obiekt
print(listA is not listC)  # Wypisze False, ponieważ listA i listC
                           # wskazują na ten sam obiekt

# Przykład 4: Porównywanie ze zwróconymi wartościami funkcji
def returnList():
    return [1, 2, 3]

# Sprawdzamy, czy nowo utworzona lista jest tym samym obiektem
print(returnList() is returnList())  # Wypisze False, ponieważ
                                     # każde wywołanie funkcji
                                     # tworzy nowy obiekt listy

# Przykład 5: Porównywanie None za pomocą `is`
value = None
# Sprawdzamy, czy value jest None
print(value is None)  # Wypisze True, ponieważ value jest None

Podsumowanie

Operatory tożsamości is oraz is not są potężnymi narzędziami w Pythonie, pozwalającymi na sprawdzenie, czy dwie zmienne odnoszą się do tego samego obiektu. Są one szczególnie przydatne w przypadku porównywania zmiennych do None, jak również w sytuacjach, gdy chcemy upewnić się, że dwie zmienne wskazują na dokładnie ten sam obiekt w pamięci, a nie tylko mają równą wartość. Ważne jest, aby pamiętać o właściwym zastosowaniu tych operatorów, aby uniknąć błędów logicznych, szczególnie przy pracy z mutowalnymi typami danych.

Jeżeli chcesz przyśpieszyć swoją naukę tworzenia stron chciałbym polecić mój kurs Python od podstaw w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.

Scroll to Top