I have a list of dictionaries like the following:
lst = [{'a': 5}, {'b': 6}, {'c': 7}, {'d': 8}]
I wrote a generator expression like:
next((itm for itm in lst if itm['a']==5))
Now the strange part is that though this works for the key value pair of 'a'
it throws an error for all other expressions the next time.
Expression:
next((itm for itm in lst if itm['b']==6))
Error:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 1, in <genexpr>
KeyError: 'b'