Keys in dict and keys not in dict
Peter Otten
__peter__ at web.de
Mon Mar 19 03:09:39 EDT 2018
Ben Finney wrote:
> Chris Angelico <rosuav at gmail.com> writes:
>
>> Sounds like a set operation to me.
>>
>> expected = {"foo", "bar", "spam"}
>> missing = expected - set(json)
>
> That works (because iterating a dict returns its keys). But it is less
> immediately understandable, IMO, than this::
>
> expected = {"foo", "bar", "spam"}
> missing = expected - set(json.keys())
There's no need to materialize the set of keys:
>>> expected = {"foo", "bar", "ham"}
>>> json = dict(foo=1, bar=2, spam=3)
>>> expected - json.keys()
{'ham'}
In Python 2 use json.viewkeys() instead of keys().
More information about the Python-list
mailing list