w3resource

Python: Remove all strings from a given list of tuples

Python List: Exercise - 192 with Solution

Write a Python program to remove all strings from a given list of tuples.

Sample Solution:

Python Code:

def test(list1):
    result =   [tuple(v for v in i if not isinstance(v, str)) for i in list1]
    return list(result)

marks = [(100, 'Math'), (80, 'Math'), (90, 'Math'), (88, 'Science', 89), (90, 'Science', 92)]
print("\nOriginal list:")
print(marks)
print("\nRemove all strings from the said list of tuples:")
print(test(marks))

Sample Output:

Original list:
[(100, 'Math'), (80, 'Math'), (90, 'Math'), (88, 'Science', 89), (90, 'Science', 92)]

Remove all strings from the said list of tuples:
[(100,), (80,), (90,), (88, 89), (90, 92)]

Flowchart:

Flowchart: Remove all strings from a given list of tuples.

Visualize Python code execution:

The following tool visualize what the computer is doing step-by-step as it executes the said program:


Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python program to find the maximum and minimum value of the three given lists.
Next: Write a Python program to find the dimension of a given matrix.

What is the difficulty level of this exercise?

Test your Python skills with w3resource's quiz



Python: Tips of the Day

Floor Division:

When we speak of division we normally mean (/) float division operator, this will give a precise result in float format with decimals.

For a rounded integer result there is (//) floor division operator in Python. Floor division will only give integer results that are round numbers.

print(1000 // 300)
print(1000 / 300)

Output:

3
3.3333333333333335