Python Program to check whether all elements in a string list are numeric
Last Updated :
23 Jul, 2025
Given a list that contains only string elements the task here is to write a Python program to check if all of them are numeric or not. If all are numeric return True otherwise, return False.
Input : test_list = ["434", "823", "98", "74"]
Output : True
Explanation : All Strings are digits.
Input : test_list = ["434", "82e", "98", "74"]
Output : False
Explanation : e is not digit, hence verdict is False.
Method 1 : Using all(), isdigit() and generator expression
In this, we check for numbers from isdigit(). all() is used to check for all strings to be number, and iteration for each string is done using generator expression.
Example:
Python3
# initializing list
test_list = ["434", "823", "98", "74"]
# printing original list
print("The original list is : " + str(test_list))
# checking all elements to be numeric using isdigit()
res = all(ele.isdigit() for ele in test_list)
# printing result
print("Are all strings digits ? : " + str(res))
OutputThe original list is : ['434', '823', '98', '74']
Are all strings digits ? : True
Time Complexity: O(n)
Auxiliary Space: O(n)
Method 2 : Using all(), isdigit() and map()
In this, we extend test logic to each string using map(), rather than generator expression. Rest all the functionalities are performed similarly to the above method.
Example:
Python3
# initializing list
test_list = ["434", "823", "98", "74"]
# printing original list
print("The original list is : " + str(test_list))
# checking all elements to be numeric using isdigit()
# map() to extend to each element
res = all(map(str.isdigit, test_list))
# printing result
print("Are all strings digits ? : " + str(res))
OutputThe original list is : ['434', '823', '98', '74']
Are all strings digits ? : True
Time Complexity: O(n)
Auxiliary Space: O(n)
Method 3 : Using isnumeric() and len() methods
Python3
# initializing list
test_list = ["434", "82e", "98", "74"]
# printing original list
print("The original list is : " + str(test_list))
# checking all elements to be numeric using isdigit()
c=0
for i in test_list:
if i.isnumeric():
c+=1
res=False
if(c==len(test_list)):
res=True
# printing result
print("Are all strings digits ? : " + str(res))
OutputThe original list is : ['434', '82e', '98', '74']
Are all strings digits ? : False
Time Complexity: O(n)
Auxiliary Space: O(n)
Method 4 : Using replace() and len() methods
Python3
# Python Program to check whether all elements in a string list are numeric
# initializing list
test_list = ["434", "82e", "98", "74"]
# printing original list
print("The original list is : " + str(test_list))
# checking all elements to be numeric using isdigit()
c = 0
numbers = "0123456789"
for i in test_list:
for j in numbers:
i = i.replace(j, "")
if(len(i) == 0):
c += 1
res = False
if(c == len(test_list)):
res = True
# printing result
print("Are all strings digits ? : " + str(res))
OutputThe original list is : ['434', '82e', '98', '74']
Are all strings digits ? : False
Time Complexity: O(n*n)
Auxiliary Space: O(n)
Method 5 : Using filter()+list()+lambda functions
Python3
# initializing list
test_list = ["434", "823", "98", "74"]
# printing original list
print("The original list is : " + str(test_list))
# checking all elements to be numeric using isdigit()
res = list(filter(lambda x: x.isdigit(), test_list))
if(len(res) == len(test_list)):
res = True
else:
res = False
# printing result
print("Are all strings digits ? : " + str(res))
OutputThe original list is : ['434', '823', '98', '74']
Are all strings digits ? : True
Time Complexity: O(n)
Auxiliary Space: O(n)
Method 6 : Using reduce()
Python3
from functools import reduce
from operator import and_
test_list = ["434", "823", "98", "74"]
print("The original list is : " + str(test_list))
res = reduce(and_, (string.isdigit() for string in test_list))
print("Are all strings digits ? : " + str(res))
#This code is contributed by Jyothi pinjala.
OutputThe original list is : ['434', '823', '98', '74']
Are all strings digits ? : True
Time Complexity: O(n)
Auxiliary Space: O(1)
Method 7:Using for loop
Python3
test_list = ["434", "823", "98", "74"]
print("The original list is : " + str(test_list))
for string in test_list:
if not string.isdigit():
res = False
break
else:
res = True
print("Are all strings digits ? : " + str(res))
#This code is contributed by Vinay Pinjala.
OutputThe original list is : ['434', '823', '98', '74']
Are all strings digits ? : True
Time complexity: O(n)
Auxiliary Space: O(1)
Method 8: Using loop +try and except method.
Python3
test_list = ["434", "823", "98", "74"]
print("The original list is : " + str(test_list))
for i in test_list:
try:
int(i)
res=True
except:
res=False
print("Are all strings digits ? : " + str(res))
#This code is contributed by tvsk.
OutputThe original list is : ['434', '823', '98', '74']
Are all strings digits ? : True
Time complexity: O(n)
Auxiliary Space: O(1)
Method 9: Using re.match() method
Approach
- Initiate a for loop to traverse test_list, variable c=0
- Check whether each string is numeric or not using regular expression ^[0-9]+$ and method re.match() if yes increment c by 1
- If c equals to length of test_list then all strings have digits, set res to True or else False
- Display res
Python3
import re
# initializing list
test_list = ["434", "823", "98", "74"]
# printing original list
print("The original list is : " + str(test_list))
# checking all elements to be
# numeric using isdigit()
c = 0
for i in test_list:
if re.match('^[0-9]+$', i):
c += 1
res = c == len(test_list)
# printing result
print("Are all strings digits ? : " + str(res))
OutputThe original list is : ['434', '823', '98', '74']
Are all strings digits ? : True
Time Complexity: O(N) N - length of test_list
Auxiliary Space: O(1) because we used single variable res to store result
Explore
Python Fundamentals
Python Data Structures
Advanced Python
Data Science with Python
Web Development with Python
Python Practice