Determines whether the string contains digits

Usage

The `isdigit()` method returns TRUE if the string is nonempty and all characters in it are digits. Otherwise, it returns FALSE.

Unicode characters such as superscript digits `¹` , `²` and `³` are also considered as digits.

string.isdigit()

Basic Examples

``````# Check if all characters in the string are digits
S = '123'
x = S.isdigit()
print(x)
# Prints True``````

Below are a few examples where `isdigit()` method returns false.

``````# floating point number
S = '123.456'
x = S.isdigit()
print(x)
# Prints False

# number with thousands separator
S = '1,234,567'
x = S.isdigit()
print(x)
# Prints False

# empty string
S = ''
x = S.isdigit()
print(x)
# Prints False``````

isdigit() on Unicode Digit Characters

Unicode character such as superscript digit `²` is considered as a digit.

``````S = '10²'
x = S.isdigit()
print(x)
# Prints True``````

Special Unicode characters like circled digits `⑥` are also considered as digits.

``````S = '\u2465' # Special Unicode ⑥
x = S.isdigit()
print(x)
# Prints True``````

isdecimal() vs isdigit() vs isnumeric()

Following examples explain the difference between the three methods.

``````# Is 42 a decimal or digit or numeric number?
print('42'.isdecimal())        # Prints True
print('42'.isdigit())          # Prints True
print('42'.isnumeric())        # Prints True``````
``````# Is ² (Superscript Two) a decimal or digit or numeric number?
print('\u00b2'.isdecimal())    # Prints False
print('\u00b2'.isdigit())      # Prints True
print('\u00b2'.isnumeric())    # Prints True``````
``````# Is ⅓ (Vulgar Fraction One Third) a decimal or digit or numeric number?
print('\u2153'.isdecimal())    # Prints False
print('\u2153'.isdigit())      # Prints False
print('\u2153'.isnumeric())    # Prints True``````

As you can see, the main difference between the three functions is:

• isdecimal() method supports only Decimal Numbers.
• isdigit() method supports Decimals, Subscripts, Superscripts.
• isnumeric() method supports Digits, Vulgar Fractions, Subscripts, Superscripts, Roman Numerals, Currency Numerators.