擅长:python、mysql、java
<p>我认为在这种情况下提出一个例外可能是个不错的主意。在Python中,由于duck类型的原因,将多个信号压缩为一个函数的单个返回值并不理想。它不是很像Python;每次你需要做的事情是:</p>
<pre><code>result = some_function(...)
if isinstance(result, TypeA):
do_something(result)
elif isinstance(result, TypeB):
do_something_else(result)
</code></pre>
<p>你应该考虑它是否真的是最好的设计。在</p>
<p>在这种情况下,如果实现了一个自定义异常,那么调用函数的代码就可以将返回值视为<code>HTTPResponse</code>。如果函数无法返回其调用者可以以这种方式处理的任何路径,都将通过引发异常来处理。在</p>
<p>同样,捕捉异常并用消息提示用户的代码不必担心它得到的东西的确切类型。它只知道它被显式地(由异常指示)向用户显示某些内容。在</p>