Skip to main content
 首页 » 编程设计

Python 返回码

2025年05月04日9lexus

所以最近我一直在问一些关于 Python 中更专业和 pythonic 风格的问题,尽管我的问题得到了很好的答案,但我觉得我需要问一个更广泛的问题。

一般来说,当编写处理更多副作用(文件写入、字典定义等)而不是返回值的实用函数(用于库等)时,返回状态码以告知调用方非常有用它通过或失败的功能。

在 Python 中,似乎有三种方法来标记它:

使用 -1 或 0 的返回值(类似 C)并使用如下语句

if my_function(args) < 0: 
    fail condition 
pass condition 

或者使用 True/False 的返回值

if not my_function(args): 
     fail condition 
pass condition 

或使用异常(出现未知错误时退出)的“返回”或“无返回”

try: 
    my_function(args) 
except ExpectedOrKnownExceptionOrError: 
    fail condition 
pass condition 

哪一个最好?最正确?首选?我理解所有的工作,并且没有一个比另一个有太多的技术优势(除了异常处理的开销之外)。

请您参考如下方法:

不要返回一些东西来指示错误。抛出异常。绝对不要捕获异常并将其转换为返回码。