Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Python Program to test if the String only Numbers and Alphabets

  • Last Updated : 02 Feb, 2021

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 = 'GeeksforGeeks'
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

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

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!