When it is required to filter dictionaries by values in ‘K’th key in a list, a simple iteration by specifying the condition is used.
Example
Below is a demonstration of the same
my_list = [{"Python": 2, "is": 4, "cool": 11}, {"Python": 5, "is": 1, "cool": 1}, {"Python": 7, "is": 3, "cool": 7}, {"Python": 9, "is": 9, "cool": 8}, {"Python": 4, "is": 10, "cool": 6}] print("The list is :") print(my_list) search_list = [1, 9, 8, 4, 5] key = "is" my_result = [] for sub in my_list: if sub[key] in search_list: my_result.append(sub) print("The result is :") print(my_result)
Output
The list is : [{'Python': 2, 'is': 4, 'cool': 11}, {'Python': 5, 'is': 1, 'cool': 1}, {'Python': 7, 'is': 3, 'cool': 7}, {'Python': 9, 'is': 9, 'cool': 8}, {'Python': 4, 'is': 10, 'cool': 6}] The result is : [{'Python': 2, 'is': 4, 'cool': 11}, {'Python': 5, 'is': 1, 'cool': 1}, {'Python': 9, 'is': 9, 'cool': 8}]
Explanation
A list of dictionary is defined and displayed on the console.
Another list of integers and a key are defined.
An empty list is defined.
The list is iterated and if the key is found, the element is appended to the emoty list.
This is the output.
It is displayed on the console.