我有一个字典,想删除所有有空值字符串的键。
metadata = {u'Composite:PreviewImage': u'(Binary data 101973 bytes)', u'EXIF:CFAPattern2': u''}
做这个的最好方式是什么?
Python 2.X
dict((k, v) for k, v in metadata.iteritems() if v)
Python 2.7-3.X
{k: v for k, v in metadata.items() if v is not None}
请注意,您所有的键都有值。只是其中一些值是空字符串。没有值的字典中就没有键。如果它没有价值,就不会在字典中。