当我开始使用 python 编码时,一位高级开发人员建议我放置一个return True
(一般为布尔值)每当函数的作用域结束时。
例如:
def mytest():
try:
os.system('convert ./text.pdf ./text.jpg')
except:
pass
return True
不过,这对 python 解释器重要吗?返回 None 是否等于根本不返回?
没有明确的要求return
– Python 函数会隐式地return None
当它结束时没有值。
>>> def void():
... a = 3 + 4
...
>>> print(void())
None
至于什么是可取的,根据官方风格指南 https://www.python.org/dev/peps/pep-0008/#programming-recommendations这是惯用语持续的 with return
声明:
保持一致return
声明。函数中的所有 return 语句要么都应该返回表达式,要么都不应该返回。如果任何 return 语句返回一个表达式,任何不返回值的返回语句都应明确声明为 return None,并且函数末尾应有显式的 return 语句(如果可以到达):
请注意,仅当函数可能返回隐含值以外的某个值时,才应在函数末尾使用显式 return 语句。None
。基本上有三种情况:
- 功能
return
从来没有。请勿添加return
在最后。
- 功能
return
很早,但没有明确的价值。请勿添加return
在最后。
- 功能
return
s 至少一个显式值。请添加return
最后有一个明确的值。
举个例子,函数发出成功或失败信号是有意义的:
def mytest():
return_code = os.system('convert ./text.pdf ./text.jpg')
# demonstration only – use `return return_code == 0` in practice
if return_code == 0:
return True # explicit return of a value
return False # -> explicit return at the end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)