Skip to content
Related Articles

Related Articles

Improve Article

Python String isdigit() Method

  • Difficulty Level : Medium
  • Last Updated : 12 Aug, 2021

Python String isdigit() method is a built-in method used for string handling. The isdigit() method returns “True” if all characters in the string are digits, Otherwise, It returns “False”. This function is used to check if the argument contains digits such as 0123456789

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.

Errors And Exceptions:  

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

Example 1:  

Input : string = '15460'
Output : True

Input : string = '154ayush60'
Output : False

Python3




# Python code for implementation of isdigit()
   
# checking for digit
string = '15460'
print(string.isdigit())
   
string = '154ayush60'
print(string.isdigit())

Output: 

True
False

Example 2:

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




# Python program to illustrate 
# application of isdigit()
# initialising Empty string
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

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course




My Personal Notes arrow_drop_up
Recommended Articles
Page :