空字典作为 dict.get() 的默认值
Empty dict as default value of dict.get()
我正在尝试传递一个空字典作为默认 return 调用另一个字典上的 .get()
值。
queryStringParameters = event.get('queryStringParameters', ({})
size = queryStringParameters.get('size', 25)
但是,queryStringParameters.get(...)
抛出一个错误,指出 queryStringParameters 是 None
。
'NoneType' object has no attribute 'get': AttributeError
Traceback (most recent call last):
File "/var/task/api/game.py", line 13, in all
size = queryStringParameters.get('size', 25)
AttributeError: 'NoneType' object has no attribute 'get'
这是不可能的,还是我做错了什么?我也尝试了以下方法:
queryStringParameters = event.get('queryStringParameters', dict())
有可能 event
实际上包含一个恰好是 None
的键 queryStringParameters
。您是否检查过密钥是否存在?
只有键不存在才返回默认值,如果键存在且恰好是None.
则不返回
不过你也可以这样写
queryStringParameters = event.get('queryStringParameters', {}) or {}
为了安全起见。
我正在尝试传递一个空字典作为默认 return 调用另一个字典上的 .get()
值。
queryStringParameters = event.get('queryStringParameters', ({})
size = queryStringParameters.get('size', 25)
但是,queryStringParameters.get(...)
抛出一个错误,指出 queryStringParameters 是 None
。
'NoneType' object has no attribute 'get': AttributeError
Traceback (most recent call last):
File "/var/task/api/game.py", line 13, in all
size = queryStringParameters.get('size', 25)
AttributeError: 'NoneType' object has no attribute 'get'
这是不可能的,还是我做错了什么?我也尝试了以下方法:
queryStringParameters = event.get('queryStringParameters', dict())
有可能 event
实际上包含一个恰好是 None
的键 queryStringParameters
。您是否检查过密钥是否存在?
只有键不存在才返回默认值,如果键存在且恰好是None.
则不返回不过你也可以这样写
queryStringParameters = event.get('queryStringParameters', {}) or {}
为了安全起见。