日益複雜/壓痕嵌套的try-S我有這樣的代碼:如何避免在Python
try:
request=parse_request
except:
print "cannot parse your malformed request"
exit()
else:
try:
fh=a_factory_function()
except:
print "cannot create object"
else:
if request['operation']=='search':
pass
elif request['operation']=='more_like_this':
pass
elif request['operation']=='list_files':
pass
elif request['operation']=='update':
pass
else:
print 'unsupported operation'
在目前的形式,它具有壓痕
- 兩個層面解析請求
- 工廠函數生成一個對象來處理請求
我可以輕鬆地imagin這將會達到4個級別,並且對於我們的弱點推理而言過於複雜。是否有Pythonic的方式來壓扁縮進,並使其「線性」?
似乎對我來說是最合理和pythonic。 – Glider