Sunday, June 14, 2026
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
32515 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6897 POSTS0 COMMENTS
Nicole Veronica
12013 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12109 POSTS0 COMMENTS
Shaida Kate Naidoo
7019 POSTS0 COMMENTS
Ted Musemwa
7262 POSTS0 COMMENTS
Thapelo Manthata
6976 POSTS0 COMMENTS
Umr Jansen
6964 POSTS0 COMMENTS