Přejít na hlavní obsah

Jak zkontrolovat, co je zadáno číslo v Pythonu: podrobný průvodce

Python je výkonný a flexibilní programovací jazyk, který vám umožní pracovat s různými typy dat. Při vývoji programů je často nutné zkontrolovat, zda hodnota zadaná uživatelem je číslo. V této podrobné příručce se podíváme na různé způsoby, jak zkontrolovat číselné hodnoty v Pythonu.

Prvním způsobem kontroly je použití funkce isnumeric() pro řetězcovou hodnotu. Tato funkce vrátí True, pokud se hodnota řetězce skládá pouze z číslic. Je však třeba si uvědomit, že tato funkce nebude schopna ověřit číselné hodnoty s desetinnými hodnotami nebo zápornými hodnotami.

Druhý způsob kontroly je založen na použití výjimek. Můžeme se pokusit převést vstupní hodnotu na číslo pomocí funkce float() nebo int(). Pokud lze hodnotu převést, je to číslo, jinak je generována výjimka ValueError, kterou lze zpracovat.

Třetím způsobem kontroly je použití regulárních výrazů. Modul re poskytuje výkonné nástroje pro práci s pravidelnými výrazy. Můžeme určit šablonu, která odpovídá číslu, a zkontrolovat zadanou hodnotu pomocí funkce re.match(). Pokud je nalezena shoda, je zadáno číslo.

Výběr způsobu kontroly číselných hodnot v Pythonu závisí na konkrétním úkolu a požadavcích programu. Pomocí metod popsaných v této příručce budete moci snadno zjistit, zda je zadaná hodnota číslem a podle toho pokračovat v provádění programu.

Jak určím číslo v Pythonu?

1. Použití funkce isdigit() . Tato funkce kontroluje, zda se zadaný řádek skládá pouze z číslic. Pokud se řetězec skládá pouze z číslic, pak je považován za číslo. Příklad:

num = input("Введите число: ")if num.isdigit():print("Введено число")else:print("Введенное значение не является числом")

2. Použití funkce isnumeric() . Tato funkce funguje podobně jako funkce isdigit() , ale také umožňuje vstup čísel s desetinnou čárkou. Příklad:

num = input("Введите число: ")if num.isnumeric():print("Введено число")else:print("Введенное значение не является числом")

3. Použití funkce isdecimal() . Tato funkce také kontroluje, zda se zadaný řádek skládá pouze z číslic, ale neumožňuje desetinnou čárku. Příklad:

num = input("Введите число: ")if num.isdecimal():print("Введено число")else:print("Введенное значение не является числом")

4. Použití Konstrukce try-except . V tomto případě se snažíme převést zadanou hodnotu na číslo pomocí funkce float() nebo int() . Pokud je převod úspěšný, hodnota je číslo. Pokud došlo k chybě, pak zadaná hodnota není číslo. Příklad:

num = input("Введите число: ")try:num = float(num)print("Введено число")except ValueError:print("Введенное значение не является числом")

Vyberte nejvhodnější způsob pro váš úkol a použijte jej ke kontrole, zda je zadaná hodnota číslem v Pythonu.

Metody ověřování počtu

Existuje několik metod ke kontrole, zda bylo číslo zadáno v Pythonu. Zde jsou některé z nich:

MetodaPopis
isdigit()Ověřuje, že řetězec se skládá pouze z čísel.
isnumeric()Ověřuje, že řetězec obsahuje pouze číselné znaky, jako jsou desetinná čísla, zlomky nebo čísla v jiných číselných systémech.
isdecimal()Ověřuje, že řetězec obsahuje pouze desetinná čísla (tj. pouze čísla od 0 do 9).
try-exceptPoužívá konstrukci try-except k pokusu o převod řádku na číslo. Pokud se převod nezdařil, není zadáno číslo.

Každá z těchto metod má své vlastní vlastnosti a je vhodná pro různé scénáře. Výběr konkrétní metody závisí na požadavcích a omezeních vašeho programu.

Jak používat metodu isnumeric k určení čísla

Zde je příklad použití metody isnumeric() :

ŘádekVýsledek
"123" True
"123a" False
"abc" False

Metodu isnumeric() můžete použít k ověření vstupu uživatele a provádění určitých akcí v závislosti na výsledku. Můžete například požádat uživatele o zadání čísla a poté zkontrolovat, zda je zadaný řádek skutečně číslo:

number = input("Введите число: ")if number.isnumeric():print("Вы ввели число.")else:print("Вы ввели не число.")

Metoda isnumeric () je tedy užitečným nástrojem pro kontrolu, zda je zadaný řádek číslo a zda je ve vašem programu provedena příslušná akce.