Rozdział 9 · Słuchaj mojego rozkazu!

Jakie są różnice = oraz ==i jak porównywać struny

Jednym z najczęstszych błędów początkujących jest to, jak linie z rozdziału 8 są zaangażowane w warunki.

= — to nie to samo, co ==

Ta część zasługuje na szczególną uwagę – pomyłka między pojedynczym a podwójnym „równi”

Dwóch różnych operatorów: = oraz ==
= (jedna cyfra) - PRZYDZIAŁ
name = "Anna"

# sens: powiązać nazwę name
# z wartością „Anna”
# Nic się nie równa!
== (dwie cyfry) - PORÓWNANIE
name == "Anna"

#meaning: Czy wartości są równe?
# wynik to True lub False,
# zmienna sam się nie zmienia
Co używać dzisiaj: Pomylić = oraz == jest jednym z najczęstszych błędów popełnianych przez początkujących w każdym języku programowania. Jeśli if przypadkowo napisać singla =, Python od razu zgłosi błąd składni — przypisania nie można używać jako warunku, więc ten konkretny błąd, na szczęście, nie przechodzi niezauważony.

!= — „nie równy”

!= — operator odwrotny ==:

ne_ravno.py
password = ""
print(password != "")   #False – hasło jest po prostu puste

password = "secret123"
print(password != "")   #True – Hasło NIE jest puste
Dlaczego != a nie ≠
W matematyce „nie równa się” zapisuje się jednym znakiem — . Na klawiaturze nie ma takiej ikony, a Python (jak C, Java JavaScript prawie wszystkie języki programowania) nie rozumie jej jako kodu — musisz zapisać dokładnie dwa zwykłe symbole w rzędzie: wykrzyknik i znak równości, !=. Są to dwa różne, ale równoważne określenia tej samej idei: ≠ jest zapisem dla osoby na papierze, != jest wpisem dotyczącym Python. If w kodzie na tej stronie != wygląda jak pojedyncza przekreślona ikona — to po prostu cecha czcionki edytora (ligatury), która jest piękna ekspozycje dwóch postaci obok siebie; nadal musisz pisać ! oraz = osobno — nie musisz szukać osobnej „ikony ≠”

Porównanie stringów

Widzieliśmy w rozdziale 8: struny są porównywane przez postacie, a przypadek jest ważny:

sravnenie_strok.py
print("Python" == "python")   #False – Sprawa jest ważna
print("cat" < "dog")          # True
"cat" < "dog" nie jest do końca "alfabetycznie"
Python porównuje linie przez pozycje kodów znaków, a nie według „ludzkiego” alfabetycznego porządku słownika. Dla zwykłych liter łacińskich w jednej wielkości rezultat zwykle pokrywa się z intuicją, ale przy mieszaniu wielkości liter lub różnych alfabetów nie zawsze jest to „porządek alfabetyczny”
TROCHĘ GŁĘBIEJ JEST KOD SYMBOLU
Każdy znak odpowiada liczbie — swojemu kodowi. Funkcja ord() to pokazuje: ord("A") → 65, ord("a") → 97. To są liczby Python faktycznie porównuje. W tym rozdziale nie musisz znać dokładnych liczb — ważne jest tylko, by zrozumieć, że porównanie łańcuch znaków działa przez nie, a nie przez słownik.

Normalizacja przed porównaniem

Użytkownik może wpisywać "Tak", "TAK", "Tak" – z różnymi skrzynkami i spacjami. Metody wersy z rozdziału 8 rozwiązują ten problem jednym zdaniem:

normalizaciya.py
answer = input(„Kontynuować?”).strip().lower()

if answer == „tak”:
    print(„Kontynuujemy”)

.strip() usuwa przypadkowe szczeliny na krawędziach, .lower() małymi literami — nie ma znaczenia jak To użytkownik wpisał odpowiedź.

Praktyka: == vs. =, != i porównanie łańcuch znaków
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji
Otwórz praktykę →