Python Sprawdź, czy ciąg jest liczbą

Python Sprawdź, czy ciąg jest liczbą

Często deweloper aplikacji musi sprawdzić, czy dane wejściowe wprowadzone przez użytkownika końcowego zawiera wszystkie wartości liczbowe, czy nie. Nie jest to trudne zadanie, ale gdy dane wejściowe jest w postaci ciągu, sprawdzenie, czy ciąg zawiera wszystkie wartości liczbowe, może być trudne.

Można zastosować różne metody sprawdzenia, czy ciąg w Pythonie jest ciągiem numerycznym, czy nie. Termin ciąg numeryczny będzie używany w tym poście, ponieważ służy do pokazania, że ​​ciąg zawiera tylko wartość liczbową.

Metoda 1: Jak sprawdzić, czy ciąg jest liczbą przy użyciu metody „isnumeric ()”?

Python zapewnia wbudowaną metodę „isnumeric ()”Aby sprawdzić, czy ciąg jest ciągiem numerycznym, czy nie. Aby użyć tej metody, użytkownik musi wywołać tę metodę za pomocą operatora kropki na zmiennej zawierającej dany ciąg. Spójrz na jego składnię, aby lepiej zrozumieć:

ResultVar = StringVar.isnumeric ()


Wartość zwracana tej metody to „logiczna”, co oznacza, że ​​albo zwraca Prawdę lub Fałsz.

Aby zademonstrować zastosowanie tej metody, weź następujący fragment kodu:

StringVar = "123654"
ResultVar = StringVar.isnumeric ()
Drukuj (ResultVar)


Po wykonaniu tego kodu na terminalu wyświetlane jest następujące dane wyjściowe:


Wyjście weryfikuje, że dany ciąg jest rzeczywiście łańcuchem numerycznym. Weźmy kolejny przykład, w którym ciąg zawiera również inne znaki:

StringVar = "168Hello11"
ResultVar = StringVar.isnumeric ()
Drukuj (ResultVar)


Uruchomienie tego powyższego kodu przyniesie następujący wynik na terminalu:


Wyjście potwierdza, że ​​tym razem ciąg nie jest ciągiem numerycznym.

Metoda 2: Jak sprawdzić, czy ciąg jest liczbą przy użyciu konwersji typu?

Ta metoda dotyczy głównie ręcznego rzucania typu i znalezienia wniosków w zależności od obsługi błędów. Gdy ciąg liczbowy jest konwertowany na typ danych liczb całkowitych, nie generowane są błędy. Jeśli jednak nie-numeryczny ciąg zostanie przekonwertowany na liczbę całkowitą, program przebiega w błąd, a program zawiesza się. Za pomocą obsługi wyjątków można uniknąć awarii, a wynik można łatwo wygenerować.

Aby to zademonstrować, weź następujący fragment kodu:

StringVar = „9932”
isnumericstring = true;
próbować:
int (StringVar)
Z wyjątkiem ValueerRor:
isnumericstring = false
Jeśli isnumericString:
print („to ciąg numeryczny”)
w przeciwnym razie:
print („to nie jest ciąg numeryczny”)


W powyższym fragmencie kodu:

    • Utwórz zmienną ciągną i zmienną logiczną
    • Spróbuj przekształcić zmienną ciągu w całkowitą metodę za pomocą metody int () w instrukcji „spróbuj”
    • Jeśli występuje błąd lub wyjątek w konwersji, zmień wartość „isnumericstring” na false.
    • W przeciwnym razie nie zmieniaj wartości
    • Wreszcie, w zależności od wartości „isnumericString”, poinformuj wynik użytkownikowi za pomocą funkcji print ().

Po wykonaniu tego polecenia na terminalu wyświetlane jest następujące dane wyjściowe:


Dowodzi to, że ciąg jest rzeczywiście ciągiem numerycznym.

Metoda 3: Jak sprawdzić, czy ciąg jest liczbą przy użyciu metody „isdigit ()”?

Kolejną wbudowaną metodą dostarczoną przez Pythona jest metoda „isdigit ()”. Ta metoda działa również tak samo jak metoda „isnumeric ()”, ale jedyną różnicą jest to, że może tylko sprawdzić dodatnie wartości liczb całkowitych, a nie pod względem liczby zmiennoprzecinkowych lub ujemnych wartości liczb całkowitych.

Aby zademonstrować jego użycie, weź następujący fragment kodu:

StringVar = "456"
drukuj (StringVar.isdigit ())


Wyjście tego kodu jest następujące:


Zapewnia to, że ciąg zawiera dodatnią wartość całkowitą. Alternatywnie użyj następującego kodu, aby sprawdzić wyjście dla nie-numerycznego ciągu:

stringVar = "123Hello"
drukuj (StringVar.isdigit ())


To drukuje następujący wynik na terminalu:


Z tego powyższego obrazu wyjściowego można zaobserwować, że ciąg nie zawiera dodatniej wartości całkowitej.

Wniosek

Sprawdzanie, czy ciąg jest łańcuchem lub liczbą, można łatwo wykonać w Python za pomocą wbudowanych metod „isnumeric ()” i „isdigit ()” lub także poprzez obsługę wyjątków i metody konwersji typu. Wbudowane metody mają logiczny typ powrotu, co oznacza, że ​​zwrócą „true”, gdy ciąg jest ciągiem numerycznym, w przeciwnym razie fałszywe. Ten post opracował różne metody, które można użyć do sprawdzenia, czy ciąg jest liczbą w Pythonie.