str.isdigit() Digits only
Last updated: 2026-09-22
str.isdigit() Digits only
str.isdigit() returns True if every char is a digit character (incl. Unicode) and the string is non-empty.
| Category | String Methods |
|---|---|
| Kind | Built-in Type Method |
| Python Version | all |
📝 Syntax
str.isdigit()
Returns:bool. True if non-empty and every char is a digit character.
Mutates the original:No (returns a new object)
▶ Example
Edit the code, press Run, and see the result in the output panel:
Output:
True
False
True
💡 Related Cases
More case studies coming soon — check back later.
❓ FAQ
QWhat is the difference between isdigit() and isdecimal()?
Aisdigit() is broader and includes superscript digits: '²'.isdigit() is True, but '²'.isdecimal() is False. For ordinary Arabic digits both return True.
QWhat does an empty string return?
AFalse, because isdigit() requires a non-empty string.
QWhat about negative numbers or strings with a decimal point?
A'-1'.isdigit() and '3.14'.isdigit() are both False, because the minus sign and the decimal point are not digit characters.
QDo Chinese numeral characters count as digit characters?
A'一二三'.isdigit() is False (but isnumeric() is True). Arabic-Indic digits like '١٢٣'.isdigit() are True.