str.isdecimal() Decimal digits
Last updated: 2026-09-22
str.isdecimal() Decimal digits
str.isdecimal() returns True if non-empty and every char is a decimal digit (Unicode category Nd).
| Category | String Methods |
|---|---|
| Kind | Built-in Type Method |
| Python Version | all |
📝 Syntax
str.isdecimal()
Returns:bool. True if non-empty and every char is a decimal digit (Unicode Nd).
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
False
💡 Related Cases
More case studies coming soon — check back later.
❓ FAQ
QWhat is the difference between isdecimal() and isdigit()?
Aisdecimal() only recognizes decimal digits (Unicode category Nd): '²'.isdecimal() is False while '²'.isdigit() is True. isdecimal() is stricter.
QWhat about Chinese numeral characters?
A'一二三'.isdecimal() is False (Chinese numeral characters only return True for isnumeric()).
QCan it be used to test "safe for int()"?
ANot entirely. Full-width digits such as '123'.isdecimal() are True, but int('123') raises ValueError. For strict validation combine with isascii().