Is there a way to check if a value is unique for a specific list, within a dictionary of lists? If yes, I would like to know in which key/list pair/s the value is present.
For example: {1: [3, 4, 5], 2: [4], 3: [5], 6: [3, 5, 9], 8: [3 ,8]}
I want to check if 3 is present in any of the other lists within the dictionary, besides 1: [3, 4, 5(compare it with all others). Since it is, then I must receive as a result 6 and 8, because these are the keys, which corresponding lists have this value.
Advertisement
Answer
Try this:
def find_n(nums, target, exception): res = [] for n, nums_list in nums.items(): exception_key = [i for i in exception][0] if n != exception_key and nums_list != exception[exception_key]: if target in nums_list: res.append(n) return res if __name__ == '__main__': nums = {1: [3, 4, 5], 2: [4], 3: [5], 6: [3, 5, 9], 8: [3, 8]} target = 3 exception = {1: [3, 4, 5]} print(find_n(nums, target, exception))
Reuslt:
[6, 8]