Python – Remove given character from first element of Tuple
Given a Tuple list, remove K character from 1st element of Tuple being String.
Input : test_list = [(“GF$g!”, 5), (“!i$s”, 4), (“best!$”, 10)], K = ‘$’
Output : [(‘GFg!’, 5), (‘!is’, 4), (‘best!’, 10)]
Explanation : First element’s strings K value removed.
Input : test_list = [(“GF$g!”, 5), (“best!$”, 10)], K = ‘$’
Output : [(‘GFg!’, 5), (‘best!’, 10)]
Explanation : First element’s strings K value removed.
Method #1 : Using replace() + list comprehension
In this, we use replace() to perform the task of removing of K character and list comprehension to reform tuple.
Python3
# Python3 code to demonstrate working of # Remove K character from first element of Tuple # Using replace() + list comprehension # initializing list test_list = [( "GF ! g !" , 5 ), ( "! i ! s" , 4 ), ( "best !!" , 10 )] # printing original list print ( "The original list is : " + str (test_list)) # initializing K K = "!" # replace with empty string removes the desired char. res = [(sub[ 0 ].replace(K, ''), sub[ 1 ]) for sub in test_list] # printing result print ( "The filtered tuples : " + str (res)) |
The original list is : [('GF!g!', 5), ('!i!s', 4), ('best!!', 10)] The filtered tuples : [('GFg', 5), ('is', 4), ('best', 10)]
Method #2 : Using translate() + list comprehension
In this, we perform task of removal using translate(), which needs conversion to ASCII using ord(), and replaced with an empty character.
Python3
# Python3 code to demonstrate working of # Remove K character from first element of Tuple # Using translate() + list comprehension # initializing list test_list = [( "GF ! g !" , 5 ), ( "! i ! s" , 4 ), ( "best !!" , 10 )] # printing original list print ( "The original list is : " + str (test_list)) # initializing K K = "!" # translation after conversion to ascii number res = [(sub[ 0 ].translate({ ord (K): None }), sub[ 1 ]) for sub in test_list] # printing result print ( "The filtered tuples : " + str (res)) |
The original list is : [('GF!g!', 5), ('!i!s', 4), ('best!!', 10)] The filtered tuples : [('GFg', 5), ('is', 4), ('best', 10)]
Method #3: Using for loop
Python3
# Python3 code to demonstrate working of # Remove K character from first element of Tuple # initializing list test_list = [( "GF!g!" , 5 ), ( "!i!s" , 4 ), ( "best!!" , 10 )] # printing original list print ( "The original list is : " + str (test_list)) # initializing K res1 = [] K = "!" for i in test_list: res = "" for j in i[ 0 ]: if (j ! = K): res + = j x = (res, i[ 1 ]) res1.append(x) # printing result print ( "The filtered tuples : " + str (res1)) |
The original list is : [('GF!g!', 5), ('!i!s', 4), ('best!!', 10)] The filtered tuples : [('GFg', 5), ('is', 4), ('best', 10)]
Please Login to comment...