Tuesday, October 7, 2025
HomeLanguagesPython – Trim tuples by K

Python – Trim tuples by K

Given the Tuple list, trim each tuple by K.

Examples:

Input : test_list = [(5, 3, 2, 1, 4), (3, 4, 9, 2, 1), (9, 1, 2, 3, 5), (4, 8, 2, 1, 7)], K = 2 
Output : [(2,), (9,), (2,), (2,)] 
Explanation : 2 elements each from front and rear are removed.
 

Input : test_list = [(5, 3, 2, 1, 4), (3, 4, 9, 2, 1), (9, 1, 2, 3, 5), (4, 8, 2, 1, 7)], K = 1 
Output : [(3, 2, 1), (4, 9, 2), (1, 2, 3), (8, 2, 1)] 
Explanation : 1 element each from front and rear are removed. 

Method #1: Using loop + slicing 

In this, we omit front and rear K elements by using slicing, converting tuple to list, then reconversion to the tuple.

Python3




# Python3 code to demonstrate working of
# Trim tuples by K
# Using loop + slicing
 
# initializing list
test_list = [(5, 3, 2, 1, 4), (3, 4, 9, 2, 1),
             (9, 1, 2, 3, 5), (4, 8, 2, 1, 7)]
 
# printing original list
print("The original list is : " + str(test_list))
 
# initializing K
K = 2
 
res = []
for ele in test_list:
    N = len(ele)
 
    # triming elements
    res.append(tuple(list(ele)[K: N - K]))
 
# printing result
print("Converted Tuples : " + str(res))


Output:

The original list is : [(5, 3, 2, 1, 4), (3, 4, 9, 2, 1), (9, 1, 2, 3, 5), (4, 8, 2, 1, 7)] Converted Tuples : [(2,), (9,), (2,), (2,)]

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

Method #2: Using list comprehension + slicing 

In this, we perform tasks in a similar way as the above method, difference being list comprehension is employed to perform the task in one-liner.

Python3




# Python3 code to demonstrate working of
# Trim tuples by K
# Using list comprehension + slicing
 
# initializing list
test_list = [(5, 3, 2, 1, 4), (3, 4, 9, 2, 1),
             (9, 1, 2, 3, 5), (4, 8, 2, 1, 7)]
 
# printing original list
print("The original list is : " + str(test_list))
 
# initializing K
K = 2
 
# one-liner approach to solve problem
res = [tuple(list(ele)[K: len(ele) - K]) for ele in test_list]
 
# printing result
print("Converted Tuples : " + str(res))


Output:

The original list is : [(5, 3, 2, 1, 4), (3, 4, 9, 2, 1), (9, 1, 2, 3, 5), (4, 8, 2, 1, 7)] Converted Tuples : [(2,), (9,), (2,), (2,)]

Time Complexity: O(n), where n is the length of the input list. This is because we’re using the built-inlist comprehension + slicing which all has a time complexity of O(nlogn) in the worst case.
Auxiliary Space: O(n), as we’re using additional space other than the input list itself.

Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Dominic
32340 POSTS0 COMMENTS
Milvus
86 POSTS0 COMMENTS
Nango Kala
6708 POSTS0 COMMENTS
Nicole Veronica
11872 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11936 POSTS0 COMMENTS
Shaida Kate Naidoo
6829 POSTS0 COMMENTS
Ted Musemwa
7090 POSTS0 COMMENTS
Thapelo Manthata
6780 POSTS0 COMMENTS
Umr Jansen
6784 POSTS0 COMMENTS