Skip to content
Related Articles

Related Articles

Python | Remove all strings from a list of tuples

View Discussion
Improve Article
Save Article
  • Last Updated : 22 Jul, 2022
View Discussion
Improve Article
Save Article

Given a list of tuples, containing both integer and strings, the task is to remove all strings from list of tuples. Examples: 

Input : [(1, 'Paras'), (2, 'Jain'), (3, 'GFG'), (4, 'Cyware')]
Output :   [(1), (2), (3), (4)]

Input : [('string', 'Geeks'), (2, 225), (3, '111')]
Output : [(), (2, 225), (3,)]

  Method #1: Using filter() method 

Python3




# Python code to remove all strings from a list of tuples
 
# Check function to check isinstance
def check(x):
    return not isinstance(x, str)
     
# creating list of tuples
listOfTuples = [('string', 'Paras'), (2, 'Jain'), (3, 'GFG'),
                                 (4, 'Cyware'), (5, 'Noida')]   
 
# using filter
output = ([tuple(filter(check, x)) for x in listOfTuples])
 
# printing output
print(output)

Output:

[(), (2,), (3,), (4,), (5,)]

  Method #2: 

Python3




# Python code to remove all strings from a list of tuples
 
# Creating list of tuples
listOfTuples = [('string', 'Geeks'), (2, 225), (3, '111'),
                                 (4, 'Cyware'), (5, 'Noida')]   
 
 
output = [tuple(j for j in i if not isinstance(j, str))
                                 for i in listOfTuples]
 
# printing output
print(output)

Output:

[(), (2, 225), (3,), (4,), (5,)]

Method #3: Using type() method

Python3




# Python code to remove all strings from a list of tuples
     
# creating list of tuples
listOfTuples = [('string', 'Paras'), (2, 'Jain'), (3, 'GFG'),(4, 'Cyware'), (5, 'Noida')]   
x=[]
for i in listOfTuples:
    p=[]
    for j in i:
        if(not (type(j) is str)):
            p.append(j)
    p=tuple(p)
    x.append(p)
         
# printing output
print(x)

Output

[(), (2,), (3,), (4,), (5,)]

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!