De python returnverklaring wordt gebruikt om waarden uit de functie terug te geven. We kunnen de returnverklaring alleen in een functie gebruiken. Het kan niet buiten een Python-functie worden gebruikt.
Python Functie zonder returnverklaring
Elke functie in Python geeft iets terug. Als de functie geen returnverklaring heeft, geeft deze None
terug.
def print_something(s):
print('Printing::', s)
output = print_something('Hi')
print(f'A function without return statement returns {output}')
Output:

Voorbeeld van een Python Returnverklaring
We kunnen enkele bewerkingen uitvoeren in een functie en het resultaat teruggeven aan de beller met behulp van de returnverklaring.
def add(x, y):
result = x + y
return result
output = add(5, 4)
print(f'Output of add(5, 4) function is {output}')
Output:

Python returnverklaring met expressie
We kunnen ook expressies hebben in de returnverklaring. In dat geval wordt de expressie geëvalueerd en het resultaat wordt teruggegeven.
def add(x, y):
return x + y
output = add(5, 4)
print(f'Output of add(5, 4) function is {output}')
Output:

Python retourneert boolean
Laten we kijken naar een voorbeeld waarbij we de boolean-waarde van het argument van een functie retourneren. We zullen de bool()-functie gebruiken om de boolean-waarde van het object te verkrijgen.
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")}')
Output:

Python retourneert string
Laten we kijken naar een voorbeeld waarbij onze functie de stringrepresentatie van het argument retourneert. We kunnen de str()-functie gebruiken om de stringrepresentatie van een object te verkrijgen.
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)}')
Output:

Python retourneert tuple
Soms willen we een aantal variabelen omzetten in een tuple. Laten we zien hoe we een functie kunnen schrijven om een tuple terug te geven vanuit een variabel aantal argumenten.
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}')
Output:

Verder lezen: Python *args en **kwargs
Python-functie die een andere functie retourneert
We kunnen ook een functie retourneren vanuit de return-instructie. Dit lijkt op Currying, wat de techniek is om de evaluatie van een functie die meerdere argumenten aanneemt te vertalen naar het evalueren van een reeks functies, elk met één argument.
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}')
Uitvoer:

Python-functie die een buitenste functie retourneert
We kunnen ook een functie retourneren die buiten de functie is gedefinieerd met de return-instructie.
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}')
Uitvoer:

Python retourneert meerdere waarden
Als u meerdere waarden wilt retourneren vanuit een functie, kunt u een tuple, lijst of dictionary-object retourneren, afhankelijk van uw vereisten. Als u echter een groot aantal waarden moet retourneren, kan het gebruik van een sequentie een te grote belasting van de resources zijn. In dat geval kunnen we yield gebruiken om meerdere waarden één voor één te retourneren.
def multiply_by_five(*args):
for arg in args:
yield arg * 5
a = multiply_by_five(4, 5, 6, 8)
print(a)
# toont de waarden
for i in a:
print(i)
Output:

Samenvatting
De Python return-instructie wordt gebruikt om de output van een functie te retourneren. We hebben geleerd dat we ook een functie kunnen retourneren vanuit een andere functie. Bovendien worden expressies geëvalueerd en wordt het resultaat vervolgens geretourneerd door de functie.
U kunt de volledige Python-script en meer Python-voorbeelden bekijken in onze GitHub Repository.
Source:
https://www.digitalocean.com/community/tutorials/python-return-statement