Skip to content
Related Articles
Open in App
Not now

Related Articles

Python | Remove tuple from list of tuples if not containing any character

Improve Article
Save Article
  • Last Updated : 03 Feb, 2023
Improve Article
Save Article

Given a list of tuples, the task is to remove all those tuples which do not contain any character value. Example: 

Input: [(', ', 12), ('...', 55),
        ('-Geek', 115), ('Geeksfor', 115),]

Output: [('-Geek', 115), ('Geeksfor', 115)]

Method #1 : Using list comprehension 

Python3




# Python code to remove all those
# elements from list of tuple
# which does not contains any alphabet.
 
# List initialization
List = [(', ', 12), ('Paras', 5),
        ('jain.', 11), ('...', 55),
        ('-Geek', 115), ('Geeksfor', 115),
        (':', 63), ('Data', 3), ('-', 15),
        ('Structure', 32), ('Algo', 80),]
 
# Using list comprehension
out = [(a, b) for a, b in List
       if any(c.isalpha() for c in a)]
 
# Printing output
print(out)

Output

[('Paras', 5), ('jain.', 11), ('-Geek', 115), ('Geeksfor', 115), ('Data', 3), ('Structure', 32), ('Algo', 80)]

Method #2 : Using Regex 

Python3




# Python code to remove all those
# elements from list of tuple
# which does not contains any alphabet.
 
# List initialization
List = [(', ', 12), ('Paras', 5),
        ('jain.', 11), ('...', 55),
        ('-Geek', 115), ('Geeksfor', 115),
        (':', 63), ('Data', 3), ('-', 15),
        ('Structure', 32), ('Algo', 80),]
 
# Importing
import re
 
# Using regex
out = [t for t in List if re.search(r'\w', t[0])]
 
# Printing output
print(out)

Output

[('Paras', 5), ('jain.', 11), ('-Geek', 115), ('Geeksfor', 115), ('Data', 3), ('Structure', 32), ('Algo', 80)]

Method 3 : Using Filter and lambda 

Python3




# Python code to remove all those
# elements from list of tuple
# which does not contains any alphabet.
 
# List initialization
List = [(', ', 12), ('Paras', 5),
        ('jain.', 11), ('...', 55),
        ('-Geek', 115), ('Geeksfor', 115),
        (':', 63), ('Data', 3), ('-', 15),
        ('Structure', 32), ('Algo', 80),]
 
# Using filter
out = filter(lambda x:any(c.isalpha()
                for c in x[0]), List)
 
# Converting in list
out = list(out)
 
# Printing output
print(out)

Output

[('Paras', 5), ('jain.', 11), ('-Geek', 115), ('Geeksfor', 115), ('Data', 3), ('Structure', 32), ('Algo', 80)]

Method 4: Using recursive function.

Python3




# Python code to remove all those
# elements from list of tuple
# which does not contains any alphabet.
 
#using recursive function
def filter_list(tuples, filtered):
    if not tuples:
        return filtered
    if any(c.isalpha() for c in tuples[0][0]):
        filtered.append(tuples[0])
    return filter_list(tuples[1:], filtered)
 
 
 
# List initialization
List = [(', ', 12), ('Paras', 5),
        ('jain.', 11), ('...', 55),
        ('-Geek', 115), ('Geeksfor', 115),
        (':', 63), ('Data', 3), ('-', 15),
        ('Structure', 32), ('Algo', 80),]
 
# Using list comprehension
out = filter_list(List, [])
 
# Printing output
print(out)
#this code contributed by tvsk

Output

[('Paras', 5), ('jain.', 11), ('-Geek', 115), ('Geeksfor', 115), ('Data', 3), ('Structure', 32), ('Algo', 80)]

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


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!