When it is required to find the minimum 'k' records from a list of tuples, it can be done using the 'sorted' method and lambda function.
The 'sorted' method is used to sort the elements of a list. Anonymous function is a function which is defined without a name.
In general, functions in Python are defined using 'def' keyword, but anonymous function is defined with the help of 'lambda' keyword. It takes a single expression, but can take any number of arguments. It uses the expression and returns the result of it.
A list can be used to store heterogeneous values (i.e data of any data type like integer, floating point, strings, and so on).
A list of tuple basically contains tuples enclosed in a list.
Below is a demonstration of the same −
Example
my_list = [( 67, 'Will'), (34, 'Mark'), (99, 'Dev'), (2, 'Paul')] print ("The list is : " ) print(my_list) K = 3 print("The value of 'K' has been initialized") my_result = sorted(my_list, key = lambda x: x[1])[:K] print("The lowest " + str(K) + " records are : ") print(my_result)
Output
The list is : [(67, 'Will'), (34, 'Mark'), (99, 'Dev'), (2, 'Paul')] The value of 'K' has been initialized The lowest 3 records are : [(99, 'Dev'), (34, 'Mark'), (2, 'Paul')]
Explanation
- A list of tuples is defined, and displayed on the console.
- The value of 'K' is initialized.
- The sorted method is used to sort the list of tuples, based on the lambda function which is defined inside it.
- This operation is assigned a variable.
- This variable is the output that is displayed on the console.