如果dict没有键或值为空,则返回无

mys*_*ick 0 python dictionary

None如果字典x没有密钥field或者它有密钥但值是空字典,我想返回.

如果密钥不存在,我results = x.get('field')会返回None.如果它存在x.get('field')将返回一个字典.我想results也是None如果x.get('field')回来{}.有一个很好的pythonic方式这样做?

目前我有results = x.get('field') if x.get('field') else None.这看起来很复杂.

Sun*_*tha 5

如果dict包含空字典,则可以使用oroperator显式返回None

results = x.get('field') or None
Run Code Online (Sandbox Code Playgroud)

但请注意,您将获得None,因为其他类型的值,整个bool状态为false,例如0,''等等.