在 Python 中退出函数
每个程序都有一定的执行流程。流程不过是程序的执行方式。return
语句用于退出 Python 的函数,该函数可在程序内部的许多不同情况下使用。但是下面是我们使用此语句的两种最常见的方法。
- 当我们要在函数退出或执行后从其返回值时。我们稍后将在程序中使用该值。
def add(a, b):
return a+b
value = add(1,2)
print(value)
输出:
3
在这里,它返回由 a+b
计算的值,然后将该值 3
存储在 value
变量内。
- 当我们想在给定时刻停止执行函数时。
def add(a, b):
if(a == 0):
return
elif(b == 0):
return
else:
sum = a + b
return sum
value = add(0,2)
print(value)
输出:
None
在这里,如果 a
或 b
的值为 0
,它将直接返回而无需计算数字的总和。如果它们不是 0
,那么只有它会计算并返回 sum
。
现在,如果你在程序中实现此语句,则根据你在程序中添加此语句的位置,程序执行将发生变化。让我们看看它是如何工作的。
Python 中的隐式返回类型
假设我们有一个函数使用 if
语句编写,然后让我们看一下程序的行为。
def solution():
name = "john"
if(name == "john"):
print('My name ',name)
solution()
输出:
My name john
solution()
函数不带参数。在其中,我们有一个名为 name
的变量,然后使用 if
语句检查其值是否与字符串 john
相匹配。如果匹配,则打印 name
变量的值,然后退出该函数。否则,如果字符串不匹配,我们将不执行任何操作而直接退出它。
在这里,你可能会认为由于代码中没有 return
语句,因此不存在 return
语句。请注意,return 语句不是强制性的。每当你退出任何 Python 函数时,只有在未指定 return
语句的情况下,它才使用值 None
调用 return
。值 None
表示该函数已完成其执行,并且不返回任何内容。如果你指定了不带任何参数的 return
语句,则它也与 return None
相同。如果你未在函数内指定任何返回类型,则该函数将调用 return
语句。在 Python 中称为隐式返回类型。
Python 中的显式返回类型
每当你在代码中自己显式添加 return
语句时,该返回类型都称为显式返回类型。具有显式的返回类型有很多优点,例如,你可以传递函数计算出的值并将其存储在变量中以供以后使用,或者借助 return
语句根据某些条件停止执行该函数等等。让我们看一下 Python 中显式类型的示例。
def Fibonacci(n):
if n < 0:
print("Fibo of negative num does not exist")
elif n == 0:
return 0
elif n == 1 or n == 2:
return 1
else:
return Fibonacci(n-1) + Fibonacci(n-2)
print(Fibonacci(0))
输出:
0
这是一个用于查找斐波那契数的程序。注意在显式 return
语句的帮助下代码是如何返回的。在这里,主要要注意的是,如果传递给该函数的数字是 2
或小于 2
,我们将直接返回某个值,并忽略该代码下面的代码退出该函数。仅当传递给该函数的值大于 2
时,我们才会执行主代码(出现在 else
块中)。
Sahil is a full-stack developer who loves to build software. He likes to share his knowledge by writing technical articles and helping clients by working with them as freelance software engineer and technical writer on Upwork.
LinkedIn