Rozdział 8 · Zabawa literami i słowami

Metody weryfikacji: isalpha i inne

Metody odpowiadające na True/False tego, z czego składa się łańcuch znaków, są niezbędne przed przekształceniem tekstu w liczby.

Metody spełniające True lub False

Stringi mają całą grupę metod, które sprawdzają, Z CZEGO łańcuch znaków się składa i reagują True lub False. Szczególnie oni przydatne do weryfikacji danych wejściowych użytkownika (sekcja 8.15) – przed podjęciem próby Przekonwertuj tekst na liczby.

metody_proverki.py
print("Python".isalpha())     #True - Tylko listy
print("Python3".isalpha())    #False – jest ich liczba

print("2026".isdigit())       #True – Tylko liczby
print(„28 lat”.isdigit())     #False – jest spacja i litery

print("Python3".isalnum())    #True - Tylko litery i/lub cyfry
print("Python 3".isalnum())   #False – jest przestrzeń

print("   ".isspace())        #True - tylko znaki w odstępach
print("".isspace())           #False – Pusty łańcuch znaków się nie liczy
MetodaChecki
isalpha()tylko litery (dowolnego alfabetu)
isdigit()tylko liczby 0-9
isalnum()tylko litery i/lub cyfry
isspace()tylko spacji/tabulatorów/łączników
isnumeric() i isdecimal() — krewni isdigit()
To rzadsze warianty tej samej idei: isdecimal() — najbardziej rygorystyczny (tylko zwykłe cyfry 0-9), isdigit() — nieco szerzej (obejmuje też niektóre specjalne znaki cyfrowe), isnumeric() jest najszerszy (rozumie także cyfry tekstowe, takie jak cyfry rzymskie w niektórych systemach pisma). Do nauki zadań i testowania normalnych danych wejściowych użytkownika isdigit() prawie zawsze wystarcza.

Praktyczne zastosowanie: weryfikacja przed przekształceniem

proverka_pered_int.py
age_text = "28"
if age_text.isdigit():
    age = int(age_text)
    print(f"Po 5 latach: {age + 5}")
else:
    print(„To nie wygląda jak liczba”)

Pełny operator if zostanie szczegółowo omówione w rozdziale 9 — ale już Teraz możesz zobaczyć, jak isdigit() pomaga zapobiegać awariom programu z błędem podczas próby int() z tekstu nienumerycznego.

Podstawowa praktyka
Jaki łańcuch znaków?

Dla trzech linii „Python3”, „2026”, „ ” wyświetl wynik isalpha(), isdigit() i isspace() dla każdej — i upewnij się, że rozumiesz, dlaczego otrzymano właśnie taki wynik.

Praktyka: Metody walidacji łańcuch znaków
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji
Otwórz praktykę →