A návratový výpis se používá k ukončení provádění volání funkce a vrací výsledek (hodnotu výrazu následujícího za klíčovým slovem return) volajícímu. Příkazy za příkazy return se neprovedou. Pokud je příkaz return bez výrazu, vrátí se speciální hodnota None. A vrátit se prohlášení se celkově používá k vyvolání funkce, aby bylo možné provést předané příkazy.
Poznámka: Příkaz return nelze použít mimo funkci.
Syntax:
def fun(): statements . . return [expression]>
Příklad:
def cube(x): r=x**3 return r>
Příklad:
Python3
# Python program to> # demonstrate return statement> def> add(a, b):> ># returning sum of a and b> >return> a>+> b> def> is_true(a):> ># returning boolean of a> >return> bool>(a)> # calling function> res>=> add(>2>,>3>)> print>(>'Result of add function is {}'>.>format>(res))> res>=> is_true(>2><>5>)> print>(>'
Result of is_true function is {}'>.>format>(res))> |
>
>
Výstup:
Result of add function is 5 Result of is_true function is True>
Vrácení více hodnot
V Pythonu můžeme vrátit více hodnot z funkce. Následují různé způsoby.
- Pomocí Object: Je to podobné jako v C/C++ a Javě, můžeme vytvořit třídu (v C, struct), která bude obsahovat více hodnot a vrátí objekt třídy.
Příklad
Python3
# A Python program to return multiple> # values from a method using class> class> Test:> >def> __init__(>self>):> >self>.>str> => 'geeksforgeeks'> >self>.x>=> 20> > # This function returns an object of Test> def> fun():> >return> Test()> > # Driver code to test above method> t>=> fun()> print>(t.>str>)> print>(t.x)> |
>
>Výstup
geeksforgeeks 20>
- Použití Tuple: Tuple je posloupnost položek oddělených čárkami. Je vytvořen s nebo bez (). N-tice jsou neměnné. Vidět tento pro podrobnosti tuple .
Python3
herec chiranjeevi
# A Python program to return multiple> # values from a method using tuple> > # This function returns a tuple> def> fun():> >str> => 'geeksforgeeks'> >x>=> 20> >return> str>, x;># Return tuple, we could also> ># write (str, x)> > # Driver code to test above method> str>, x>=> fun()># Assign returned tuple> print>(>str>)> print>(x)> |
>
>
- Výstup:
geeksforgeeks 20>
- Použití seznamu: Seznam je jako pole položek vytvořených pomocí hranatých závorek. Liší se od polí, protože mohou obsahovat položky různých typů. Seznamy se liší od n-tic, protože jsou proměnlivé. Podrobnosti o seznamu naleznete zde.
Python3
kyselé vlastnosti v dbms
# A Python program to return multiple> # values from a method using list> > # This function returns a list> def> fun():> >str> => 'geeksforgeeks'> >x>=> 20> >return> [>str>, x];> > # Driver code to test above method> list> => fun()> print>(>list>)> |
>
>
- Výstup:
['geeksforgeeks', 20]>
- Použití slovníku: Slovník je podobný hash nebo mapě v jiných jazycích. Vidět tento pro podrobnosti slovník .
Python3
# A Python program to return multiple> # values from a method using dictionary> > # This function returns a dictionary> def> fun():> >d>=> dict>();> >d[>'str'>]>=> 'techcodeview.com'> >d[>'x'>]>=> 20> >return> d> > # Driver code to test above method> d>=> fun()> print>(d)> |
>
>
- Výstup:
{'x': 20, 'str': 'techcodeview.com'}> Funkce vracející jinou funkci
V Pythonu jsou funkce objekty, takže můžeme vrátit funkci z jiné funkce. To je možné, protože funkce jsou v Pythonu považovány za objekty první třídy. Chcete-li se dozvědět více o prvotřídních objektech, klikněte zde.
V níže uvedeném příkladu funkce create_adder vrací funkci sčítačky.
Python3
# Python program to illustrate functions> # can return another function> def> create_adder(x):> >def> adder(y):> >return> x>+> y> >return> adder> add_15>=> create_adder(>15>)> print>(>'The result is'>, add_15(>10>))> # Returning different function> def> outer(x):> >return> x>*> 10> def> my_func():> > ># returning different function> >return> outer> # storing the function in res> res>=> my_func()> print>(>'
The result is:'>, res(>10>))> |
>
>
Výstup:
The result is 25 The result is: 100>