A atgriešanās paziņojums tiek izmantots, lai beigtu funkcijas izsaukuma izpildi un atgriež rezultātu (izteiksmes vērtību pēc atgriešanas atslēgvārda) izsaucējam. Izteikumi pēc atgriešanās paziņojumiem netiek izpildīti. Ja atgriešanas priekšraksts ir bez izteiksmes, tiek atgriezta īpašā vērtība None. A atgriezties paziņojums, apgalvojums Kopumā tiek izmantots, lai izsauktu funkciju, lai varētu izpildīt nodotos paziņojumus.
Piezīme: Atgriešanās paziņojumu nevar izmantot ārpus funkcijas.
Sintakse:
def fun(): statements . . return [expression]>
Piemērs:
def cube(x): r=x**3 return r>
Piemērs:
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))> |
>
>
Izvade:
Result of add function is 5 Result of is_true function is True>
Vairāku vērtību atgriešana
Programmā Python no funkcijas varam atgriezt vairākas vērtības. Tālāk ir norādīti dažādi veidi.
- Izmantojot objektu: Tas ir līdzīgs C/C++ un Java, mēs varam izveidot klasi (C valodā, struct), lai saglabātu vairākas vērtības un atgrieztu klases objektu.
Piemērs
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)> |
>
>Izvade
geeksforgeeks 20>
- Korpusa izmantošana: Korpuss ir ar komatu atdalīta vienumu secība. Tas ir izveidots ar vai bez (). Korpusi ir nemainīgi. Skat šis sīkākai informācijai par korts .
Python3
java šķirošanas saraksts
# 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)> |
>
>
- Izvade:
geeksforgeeks 20>
- Saraksta izmantošana: saraksts ir kā vienumu masīvs, kas izveidots, izmantojot kvadrātiekavas. Tie atšķiras no masīviem, jo tajos var būt dažāda veida vienumi. Saraksti atšķiras no kortežiem, jo tie ir mainīgi. Skatiet šo, lai iegūtu sīkāku informāciju par sarakstu.
Python3
# 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>)> |
>
>
- Izvade:
['geeksforgeeks', 20]>
- Vārdnīcas izmantošana: vārdnīca ir līdzīga jaukšanai vai kartei citās valodās. Skat šis sīkākai informācijai par vārdnīca .
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)> |
fonti Gimp
>
>
- Izvade:
{'x': 20, 'str': 'techcodeview.com'}> Funkcija, kas atgriež citu funkciju
Programmā Python funkcijas ir objekti, tāpēc mēs varam atgriezt funkciju no citas funkcijas. Tas ir iespējams, jo Python funkcijas tiek uzskatītas par pirmās klases objektiem. Lai uzzinātu vairāk par pirmās klases objektiem, noklikšķiniet šeit.
Tālāk esošajā piemērā funkcija create_adder atgriež papildinātāja funkciju.
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>))> |
>
>
Izvade:
The result is 25 The result is: 100>