我想创建简单的代码而不检查方法是否返回True
。
try:
self.__verify_headers(request)
self.__has_mguid(request)
self.__verify_devices_counter(request, course)
self.__save_device(request, course)
except NoAdditionalHeaderException, KeyError:
raise Exception("No additional headers in request")
except DeviceExistException:
return True
方法__has_mguid
抛出异常DeviceExistException
这是一种正确的方法吗?我不想把丑陋的代码写成:
if True == self.__has_mguid(request):
return True
您怎么看?
答案 0 :(得分:4)
我不会这样做。见the python docs
存在(至少)两种可区分的错误:语法错误和异常。
和
执行期间检测到的错误称为异常
所以异常就是错误。当出现问题时,它们会发生,而不是在出现预期的情况时发生。
我不想把丑陋的代码写成:
if True == self.__has_mguid(request):
return True
而不是你可以这样做:
return self.__has_mguid(request)
如果self.__has_mguid(request)
为True
,则会返回True
,如果是False
,则会返回False