Saturday, September 6, 2025
HomeLanguagesPython Program to test if the String only Numbers and Alphabets

Python Program to test if the String only Numbers and Alphabets

Given a String, our task is to write a Python program to check if string contains both numbers and alphabets, not either nor punctuations.

Examples:

Input : test_str = 'Geeks4Geeks'
Output : True
Explanation : Contains both number and alphabets.

Input : test_str = 'Lazyroar'
Output : False
Explanation : Doesn't contain number.

Method #1 : Using isalpha() + isdigit() + any() + all() + isalnum()

In this, we check for all digits containing is alphabets and numbers combination using all(), isalpha() and isdigit(). The any() and isalnum() is used to filter out possibility of punctuations.

Python3




# Python3 code to demonstrate working of
# Test if string contains both Numbers and Alphabets only
# Using isalpha() + isdigit() + any() + all() + isalnum()
 
# initializing string
test_str = 'Geeks4Geeks'
 
# printing original string
print("The original string is : " + str(test_str))
 
# conditional combination for getting result.
res = not ((all(idx.isdigit() for idx in test_str) or (all(idx.isalpha()
            for idx in test_str)) or (any(not idx.isalnum() for idx in test_str))))
 
# printing result
print("Does string contain both numbers and alphabets only? : " + str(res))


Output

The original string is : Geeks4Geeks
Does string contain both numbers and alphabets only? : True

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

Method #2 : Using regex

Using regex is one of the ways in which this problem can be solved. 

Python3




# Python3 code to demonstrate working of
# Test if string contains both Numbers and Alphabets only
# Using regex
import re
 
# initializing string
test_str = 'Geeks4Geeks'
 
# printing original string
print("The original string is : " + str(test_str))
 
# conditional combination for getting result.
res = bool(re.match("^(?=.*[a-zA-Z])(?=.*[\d])[a-zA-Z\d]+$", "A530"))
         
# printing result
print("Does string contain both numbers and alphabets only? : " + str(res))


Output

The original string is : Geeks4Geeks
Does string contain both numbers and alphabets only? : True

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

Method #3 : Using in operator

Python3




# Python3 code to demonstrate working of
# Test if string contains both Numbers and Alphabets only
 
# initializing string
test_str = 'Geeks4Geeks'
lowercasealphabets="abcdefghijklmnopqrstuvwxyz"
uppercasealphabets="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
digits="0123456789"
 
# printing original string
print("The original string is : " + str(test_str))
 
res=False
al=0
dig=0
for i in test_str:
    if (i in lowercasealphabets) or (i in uppercasealphabets):
        al+=1
    elif (i in digits) :
        dig+=1
if(al+dig==len(test_str)):
    res=True
     
# printing result
print("Does string contain both numbers and alphabets only? : " + str(res))
 
 
 
#contributed by Bhavya Koganti


Output

The original string is : Geeks4Geeks
Does string contain both numbers and alphabets only? : True

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

Method #4 : Using replace() and len() methods

Python3




# Python3 code to demonstrate working of
# Test if string contains both Numbers and
# alphabets only
 
# Initializing string
test_str = 'Geeks4Geeks'
 
lalphabets = "abcdefghijklmnopqrstuvwxyz"
ualphabets = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
digits = "0123456789"
 
x = lalphabets+ualphabets+digits
 
# Printing original string
print("The original string is : " + str(test_str))
 
for i in x:
    test_str = test_str.replace(i, "")
res = False
if(len(test_str) == 0):
    res = True
 
# Printing result
print("Does string contain both numbers and alphabets only? : " + str(res))


Output

The original string is : Geeks4Geeks
Does string contain both numbers and alphabets only? : True

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

Method #5: Using operator.countOf() method

Python3




# Python3 code to demonstrate working of
# Test if string contains both Numbers and Alphabets only
import operator as op
# initializing string
test_str = 'Geeks4Geeks'
lowercasealphabets="abcdefghijklmnopqrstuvwxyz"
uppercasealphabets="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
digits="0123456789"
 
# printing original string
print("The original string is : " + str(test_str))
 
res=False
al=0
dig=0
for i in test_str:
    if ( op.countOf(lowercasealphabets.split(),i)>0) or (op.countOf(uppercasealphabets.split(),i)>0):
        al+=1
    elif (op.countOf(digits.split(),i)>0) :
        dig+=1
if(al+dig==len(test_str)):
    res=True
     
# printing result
print("Does string contain both numbers and alphabets only? : " + str(res))


Output

The original string is : Geeks4Geeks
Does string contain both numbers and alphabets only? : False

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

Method #6:Using itertools.filterfalse() method

Python3




# Python3 code to demonstrate working of
# Test if string contains both Numbers and Alphabets only
import itertools
 
# initializing string
test_str = 'Geeks4Geeks'
 
# printing original string
print("The original string is : " + str(test_str))
 
# conditional combination for getting result.
res = list(itertools.filterfalse(
    lambda x: (x.isdigit() or x.isalpha()), test_str))
if(res):
    res = False
res = True
# printing result
print("Does string contain both numbers and alphabets only? : " + str(res))


Output

The original string is : Geeks4Geeks
Does string contain both numbers and alphabets only? : True

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

Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Dominic
32270 POSTS0 COMMENTS
Milvus
82 POSTS0 COMMENTS
Nango Kala
6639 POSTS0 COMMENTS
Nicole Veronica
11803 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11869 POSTS0 COMMENTS
Shaida Kate Naidoo
6752 POSTS0 COMMENTS
Ted Musemwa
7029 POSTS0 COMMENTS
Thapelo Manthata
6704 POSTS0 COMMENTS
Umr Jansen
6721 POSTS0 COMMENTS