Skip to content
Related Articles

Related Articles

Improve Article
Python – Change the signs of elements of tuples in a list
  • Last Updated : 02 Feb, 2021

Given a dual Tuple list, the task is to write a python program to convert second element to negative magnitude of each tuple and first element to positive magnitude of each tuple.

Input : test_list = [(3, -1), (-4, -3), (1, 3), (-2, 5), (-4, 2), (-9, -3)]

Output : [(3, -1), (4, -3), (1, -3), (2, -5), (4, -2), (9, -3)]

Explanation : All the first elements are positive, and 2nd index elements are negative, as desired.

Input : test_list = [(3, -1), (-4, -3), (1, 3), (-2, 5)]



Output : [(3, -1), (4, -3), (1, -3), (2, -5)]

Explanation : All the first elements are positive, and 2nd index elements are negative, as desired.

Method 1 : Using loop and abs()

In this, we iterate using loop and initially convert both to positive magnitude using abs(). The 2nd element is signed “-” and is converted to negative element as desired.

Example:

Python3




# initializing lists
test_list = [(3, -1), (-4, -3), (1, 3), (-2, 5), (-4, 2), (-9, -3)]
  
# printing original list
print("The original list is : " + str(test_list))
  
res = []
for sub in test_list:
  
    # 2nd element converted to negative magnitude
    res.append((abs(sub[0]), -abs(sub[1])))
  
# printing result
print("Updated Tuple list : " + str(res))

Output:

The original list is : [(3, -1), (-4, -3), (1, 3), (-2, 5), (-4, 2), (-9, -3)]

Updated Tuple list : [(3, -1), (4, -3), (1, -3), (2, -5), (4, -2), (9, -3)]



Method 2 : Using list comprehension 

Similar to above method, only difference being list comprehension is used as one liner to perform this task.

Example:

Python3




# initializing lists
test_list = [(3, -1), (-4, -3), (1, 3), (-2, 5), (-4, 2), (-9, -3)]
  
# printing original list
print("The original list is : " + str(test_list))
  
# list comprehension used as one liner
res = [(abs(sub[0]), -abs(sub[1])) for sub in test_list]
  
# printing result
print("Updated Tuple list : " + str(res))

Output:

The original list is : [(3, -1), (-4, -3), (1, 3), (-2, 5), (-4, 2), (-9, -3)]

Updated Tuple list : [(3, -1), (4, -3), (1, -3), (2, -5), (4, -2), (9, -3)]

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up
Recommended Articles
Page :