Skip to content
Related Articles
Open in App
Not now

Related Articles

Python – Check if string contains any number

Improve Article
Save Article
  • Difficulty Level : Basic
  • Last Updated : 25 Jan, 2023
Improve Article
Save Article

In this article, we will check How to check if a string contains a number in Python, we are given a string and we have to return a Boolean result i.e. True or False stating that whether a digit is present in the string or not.

Input : test_str = ‘geeks4g2eeks’ 
Output : True 

Input : test_str = ‘geeksforgeeks’ 
Output : False 

Check if string contains any number using any() + isdigit()

The combination of the above functions can be used to solve this problem. In this, we check for numbers using isdigit() and check for any occurrence using any().

Python3




# Python3 code to demonstrate working of
# Check if string contains any number
# Using isdigit() + any()
 
# initializing string
test_str = 'geeks4geeks'
 
# printing original string
print("The original string is : " + str(test_str))
 
# using any() to check for any occurrence
res = any(chr.isdigit() for chr in test_str)
     
# printing result
print("Does string contain any digit ? : " + str(res))

Output

The original string is : geeks4geeks
Does string contain any digit ? : True

Time Complexity: O(n)

Auxiliary Space: O(1)

Check if string contains any number using next() + generator expression + isdigit()

This is yet another way in which this task can be performed. This is recommended in cases of larger strings, the iteration in the generator is cheap, but construction is usually inefficient.

Python3




# Python3 code to demonstrate working of
# Check if string contains any number
# Using isdigit() + next() + generator expression
 
# initializing string
test_str = 'geeks4geeks'
 
# printing original string
print("The original string is : " + str(test_str))
 
# next() checking for each element, reaches end, if no element found as digit
res = True if next((chr for chr in test_str if chr.isdigit()), None) else False
 
# printing result
print("Does string contain any digit ? : " + str(res))

Output

The original string is : geeks4geeks
Does string contain any digit ? : True

Time Complexity: O(n)
Auxiliary Space: O(1)

Check if string contains any number using the map() function

In this example, we will see if the string contains any number or not using the map function in Python. The map() function returns a map object(which is an iterator) of the results after applying the given function to each item of a given iterable.

Python3




str1 = "Geeks"
str2 = "for345"
str3 = "Geeks"
 
print(any(map(str.isdigit, str1)))
print(any(map(str.isdigit, str2)))
print(any(map(str.isdigit, str3)))

Output

False
True
False

Time Complexity: O(n)
Auxiliary Space: O(1)

Check if string contains any number using re.search(r’\d’) 

In this example, we will use the regular expression to check if the string contains the digit or not. A regular expression is a powerful tool for matching text, based on a pre-defined pattern. To check the digit, regular expression use \d which matches the digit character.

Python3




import re
 
str1 = "Geek3s"
str2 = "for345"
str3 = "Geeks"
 
print(bool(re.search(r'\d', str1)))
print(bool(re.search(r'\d', str2)))
print(bool(re.search(r'\d', str3)))

Output

True
True
False

Time Complexity: O(n)
Auxiliary Space: O(1)

Check if string contains any number using the ASCII code

Here we are iterating over the entire string and comparing each character with the given range of ASCII values and finding if the character is a digit or not.

Python3




def digit(s):
    for i in s:
        if ord(i)>=48 and ord(i)<=57:
            return True
    return False
print(digit("Geeks4Geeks"))
print(digit("GeeksForGeeks"))

Output

True
False

Time Complexity: O(n)
Auxiliary Space: O(1)

Without any builtin methods

Python3




# Python3 code to demonstrate working of
# Check if string contains any number
 
# initializing string
test_str = 'geeks4geeks'
 
# printing original string
print("The original string is : " + str(test_str))
res=False
numbers="0123456789"
for i in test_str:
    if i in numbers:
        res=True
        break
 
# printing result
print("Does string contain any digit ? : " + str(res))

Output

The original string is : geeks4geeks
Does string contain any digit ? : True

Using replace() and len() methods

Python3




# Python3 code to demonstrate working of
# Check if string contains any number
 
# initializing string
test_str = 'geeks21geeks'
 
# printing original string
print("The original string is : " + str(test_str))
res = False
x = test_str
numbers = "0123456789"
for i in numbers:
    test_str = test_str.replace(i, "")
if(len(x) != len(test_str)):
    res = True
# printing result
print("Does string contain any digit ? : " + str(res))

Output

The original string is : geeks21geeks
Does string contain any digit ? : True

Using find() and any() methods

Python3




# Python3 code to demonstrate working of
# Check if string contains any number
 
#defining function to check is number present in string or not using find() and any() methods
def contains_number(string):
    return any(string.find(str(i)) for i in range(10))
 
# initializing string
test_str = 'geeks21geeks'
 
# printing original string
print("The original string is : " + str(test_str))
 
#calling contains_number function
res=contains_number(test_str)
 
# printing result
print("Does string contain any digit ? : " + str(res))

Output

The original string is : geeks21geeks
Does string contain any digit ? : True

Using operator.countOf() method

Python3




# Python3 code to demonstrate working of
# Check if string contains any number
import operator as op
# initializing string
test_str = 'geeks4geeks'
 
# printing original string
print("The original string is : " + str(test_str))
res = False
digits = "0123456789"
for i in test_str:
    if op.countOf(digits, i) > 0:
        res = True
        break
 
# printing result
print("Does string contain any digit ? : " + str(res))

Output

The original string is : geeks4geeks
Does string contain any digit ? : True

Time Complexity: O(n)

Auxiliary Space: O(1)


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!