Open In App

Python String isdigit() Method

Improve
Improve
Like Article
Like
Save
Share
Report

Python String isdigit() method returns “True” if all characters in the string are digits, Otherwise, It returns “False”. 

Python String isdigit() Method Syntax

Syntax: string.isdigit()

Parameters: isdigit() does not take any parameters

Returns:

  • True – If all characters in the string are digits.
  • False – If the string contains 1 or more non-digits.

Time Complexity: O(1)

Auxiliary Space: O(1)

Python String isdigit() Method Example

Python3




print("101".isdigit())


Output:

True

Example 1: Basic Usage

Python code for implementation of isdigit()

Python3




# checking for digit
string = '15460'
print(string.isdigit())
 
string = '154ayush60'
print(string.isdigit())


Output: 

True
False

Example 2: Practical Implementation

Application: Using ASCII values of characters, count and print all the digits using isdigit() function. 

Algorithm:

  1. Initialize a new string and a variable count=0.
  2. Traverse every character using ASCII value, check if the character is a digit. 
  3. If it is a digit, increment the count by 1 and add it to the new string, else traverse to the next character. 
  4. Print the value of the counter and the new string. 

Python3




newstring =''
 
# Initialising the counters to 0
count = 0
 
# Incrementing the counter if a digit is found
# and adding the digit to a new string
# Finally printing the count and the new string
 
for a in range(53):
    b = chr(a)
    if b.isdigit() == True:
        count+= 1
        newstring+= b
         
print("Total digits in range :", count)
print("Digits :", newstring)


Output: 

Total digits in range : 5
Digits : 01234

In Python, superscript and subscripts (usually written using Unicode) are also considered digit characters. Hence, if the string contains these characters along with decimal characters, isdigit() returns True. The Roman numerals, currency numerators, and fractions (usually written using Unicode) are considered numeric characters but not digits. The isdigit() returns False if the string contains these characters. To check whether a character is a numeric character or not, you can use isnumeric() method.

Example 3: String Containing digits and Numeric Characters

Python3




s = '23455'
print(s.isdigit())
 
# s = '²3455'
# subscript is a digit
s = '\u00B23455'
 
print(s.isdigit())
 
# s = '½'
# fraction is not a digit
s = '\u00BD'
 
print(s.isdigit())


Output:

True
True
False

Errors And Exceptions:

  • It does not take any arguments, therefore it returns an error if a parameter is passed
  • Superscript and subscripts are considered digit characters along with decimal characters, therefore, isdigit() returns “True”.
  • The Roman numerals, currency numerators, and fractions are not considered to be digits. Therefore, the isdigit() returns “False”


Last Updated : 23 Feb, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads