Python的返回语句
Python的return语句用于从函数中返回值。我们只能在函数中使用return语句,不能在Python函数外部使用。
没有返回语句的Python函数
在Python中,每个函数都会返回一些东西。如果函数没有任何返回语句,那么它将返回None。
def print_something(s):
print('Printing::', s)
output = print_something('Hi')
print(f'A function without return statement returns {output}')
输出:
Python 返回语句示例
我们可以在一个函数中执行一些操作,并使用 return 语句将结果返回给调用者。
def add(x, y):
result = x + y
return result
output = add(5, 4)
print(f'Output of add(5, 4) function is {output}')
结果:
Python的return语句带有表达式。
在返回语句中我们可以使用表达式。在这种情况下,表达式会被计算并返回结果。
def add(x, y):
return x + y
output = add(5, 4)
print(f'Output of add(5, 4) function is {output}')
输出:只需要一种选择
Python 返回布尔值
让我们看一个例子,我们将返回一个函数参数的布尔值。我们将使用bool()函数来获取对象的布尔值。
def bool_value(x):
return bool(x)
print(f'Boolean value returned by bool_value(False) is {bool_value(False)}')
print(f'Boolean value returned by bool_value(True) is {bool_value(True)}')
print(f'Boolean value returned by bool_value("Python") is {bool_value("Python")}')
输出:只需要一个选项,用中文本地化的方式来改写以下内容:
Python返回字符串
让我们看一个例子,我们的函数将返回参数的字符串表示形式。我们可以使用str()函数来获取对象的字符串表示形式。
def str_value(s):
return str(s)
print(f'String value returned by str_value(False) is {str_value(False)}')
print(f'String value returned by str_value(True) is {str_value(True)}')
print(f'String value returned by str_value(10) is {str_value(10)}')
输出:只需要一种选项
Python返回元组
有时候我们希望将多个变量转换为元组。让我们看看如何编写一个函数,从可变数量的参数中返回一个元组。
def create_tuple(*args):
my_list = []
for arg in args:
my_list.append(arg * 10)
return tuple(my_list)
t = create_tuple(1, 2, 3)
print(f'Tuple returned by create_tuple(1,2,3) is {t}')
输出:
更多阅读:Python *args和**kwargs
返回另一个函数的Python函数
我们可以从return语句中返回一个函数。这类似于Currying,即将接受多个参数的函数的评估转换为评估一系列只有一个参数的函数的技术。
def get_cuboid_volume(h):
def volume(l, b):
return l * b * h
return volume
volume_height_10 = get_cuboid_volume(10)
cuboid_volume = volume_height_10(5, 4)
print(f'Cuboid(5, 4, 10) volume is {cuboid_volume}')
cuboid_volume = volume_height_10(2, 4)
print(f'Cuboid(2, 4, 10) volume is {cuboid_volume}')
输出:
python函数返回外部函数
我们还可以通过return语句返回在函数外部定义的函数。
def outer(x):
return x * 10
def my_func():
return outer
output_function = my_func()
print(type(output_function))
output = output_function(5)
print(f'Output is {output}')
输出结果:
Python可以返回多个值。
如果你想从一个函数中返回多个值,根据你的需求可以返回元组、列表或字典对象。然而,如果你需要返回大量的值,使用序列会消耗太多资源。在这种情况下,我们可以使用yield逐个返回多个值。
def multiply_by_five(*args):
for arg in args:
yield arg * 5
a = multiply_by_five(4, 5, 6, 8)
print(a)
# showing the values
for i in a:
print(i)
产量。
总结
Python的return语句用于从函数中返回输出。我们学到了可以从另一个函数中返回一个函数。此外,表达式会被评估,然后结果会从函数中返回。