一种用于处理字典KeyError的班轮

Bai*_*aig 2 python python-2.7

我是Python的新手,仍然在学习技巧。

我如何将以下代码转换为单个内衬,在Python中可以吗?必须有一种整齐的方法来做到这一点。

try:
    image_file = self.request.files['image_path']
except:
    image_file = None
Run Code Online (Sandbox Code Playgroud)

Mar*_*ers 5

您有一个字典,使用该dict.get()方法返回缺少键的默认值:

image_file = self.request.files.get('image_path')
Run Code Online (Sandbox Code Playgroud)

另外,千万不能用口袋妖怪异常处理。您真的不需要在这里全部抓住它们。如果密钥丢失,KeyError被抬起时,如果必须使用try..except应该抓住刚刚与一个例外except KeyError:

  • 我喜欢“宠物小精灵异常处理”一词。:) (4认同)