Atgrieziet vairākas vērtības no Python funkcijas

Return Multiple Values From Python Function



Funkcija tiek izmantota jebkurā programmēšanas valodā, lai noteiktu reizi izpildītu noteiktu koda bloku, kad tas ir nepieciešams, un pareizi sakārtotu kodu. Dažreiz programmēšanas nolūkos no funkcijas ir jānolasa atgriešanās vērtība. Funkcijas atgriešanas vērtība tiek saglabāta mainīgā. Python funkcijas var atgriezt gan atsevišķas, gan vairākas vērtības. Šī apmācība parāda, kā no Python funkcijām var atgriezt vairākas vērtības ar vairākiem mainīgajiem, objektiem, kartēm, sarakstiem un vārdnīcām.

1. piemērs. Atgrieziet vairākas funkcijas vērtības, izmantojot vairākus mainīgos

Ja vēlaties atdot tikai dažus mainīgos no funkcijas Python, tad labāk ir definēt šos mainīgos, lai, izmantojot šo funkciju, saglabātu vairākas atgriešanās vērtības no vairākiem mainīgajiem, objektiem, kartēm, sarakstiem un vārdnīcām. Šajā piemērā skriptā ir deklarēti trīs mainīgie, lai saglabātu trīs atgriešanās vērtības. The multiVarFunc () funkcija tiek izmantota, lai ņemtu trīs ievades vērtības un atgrieztu vērtības mainīgajiem nodaļas_nosaukums, kopējais_st un total_fac .







#!/usr/bin/env python3

# Definējiet funkciju, lai atgrieztu vairākus mainīgos
defmultiVarFunc():
# Paņemiet virknes datus
dziļums= ievadi('Ievadiet nodaļas nosaukumu:')
# Ņemiet skaitliskus datus
stdnum= int(ievadi('Ievadiet kopējo studentu skaitu:'))
# Ņemiet skaitliskus datus
facnum= int(ievadi('Ievadiet fakultāšu kopskaitu:'))
# Atgriež vairākus mainīgos
atgrieztiesdziļums,stdnum,facnum;

# Izsauciet funkciju un saglabājiet atgriešanās vērtības trīs mainīgos
nodaļas_nosaukums,total_std,total_fac=multiVarFunc()
# Izdrukājiet atgriezto vērtību formatēto izvadi
drukāt(' nNodaļa:%s nKopā studenti:%d nKopā fakultātes:%d '%(nodaļas_nosaukums,total_std,
total_fac))

Izeja



Trīs vērtības tiek ņemtas par ievadi, un izvades vērtības tiek izdrukātas pēc formatēšanas.







2. piemērs. Atgrieziet vairākas vērtības no funkcijas, izmantojot karti

Šis skripts parāda, kā izmantot karti, lai no funkcijas atgrieztu vairākas vērtības. Ja vēlaties no funkcijas atgriezt daudzas vērtības, šī ir labāka iespēja. Lūk, tupleFunc () funkcija tiek izmantota, lai no lietotāja paņemtu četras ievades vērtības un atgrieztu tās zvanītājam kā karte. Atgriešanās vērtības tiks saglabātas kartotē mainīgajā nosaukumā tupleVar un vērtības tiks izdrukātas vēlāk.

#!/usr/bin/env python3

# Definējiet funkciju, lai atgrieztu vairākus mainīgos
deftupleFunc():
# Paņemiet virknes datus
stdID= ievadi('Ievadiet studenta ID:')
# Paņemiet virknes datus
stdName= ievadi('Ievadiet studenta vārdu:')
# Ņemiet veselus skaitļus
stdBatch= int(ievadi('Ievadiet partijas numuru:'))
# Paņemiet pludiņa datus
stdCGPA= peldēt(ievadi('Ievadiet CGPA:'))
# Atgrieziet vairākus mainīgos kā kartotēku
atgriezties (stdID,stdName,stdBatch,stdCGPA)

# Izsauciet funkciju un saglabājiet atgriešanas vērtības kartē
tupleVar=tupleFunc()
# Izdrukājiet kartotēkas formatēto izvadi
drukāt(' nID:%s nNosaukums:%s nPartija:%d nCGPA: %4.2f '%(tupleVar[0],tupleVar[1],tupleVar[2],
tupleVar[3]))

Izeja



Četras ievades vērtības tiek ņemtas par ievadi, un pēc tam tiek izdrukātas formatētas izvades vērtības.

3. piemērs: atgrieziet vairākas vērtības no funkcijas, izmantojot sarakstu

Šis skripts parāda, kā izmantot sarakstu, lai no funkcijas atgrieztu vairākas vērtības. Šī ir vēl viena iespēja, lai no funkcijas atgrieztu daudzas vērtības. The listFunc () funkcija tiek izmantota skriptā, lai no lietotāja ņemtu divus veselus skaitļus un aprēķinātu šo skaitļu saskaitīšanu, atņemšanu, reizināšanu un dalīšanu. Tālāk šie četri rezultāti tiek atgriezti kā funkcijas saraksts. Saraksta mainīgais, listVar tiek izmantots, lai saglabātu atgriešanās vērtības un izdrukātu vērtības.

#!/usr/bin/env python3

# Definējiet funkciju, lai atgrieztu vairākas vērtības kā sarakstu
deflistFunc():
# Ņemiet skaitliskus datus
numurs1= peldēt(ievadi('Ievadiet jebkuru numuru:'))
# Ņemiet skaitliskus datus
numurs 2= peldēt(ievadi('Ievadiet jebkuru numuru:'))

papildinājums=skaitlis1 + skaitlis2
atņemšana=numurs1 - skaitlis2
reizināšana=skaitlis1 * skaitlis2
sadalīšana=numurs1 / skaitlis2

# Atgrieziet vairākus mainīgos kā sarakstu
atgriezties [numurs1,numurs 2,papildinājums,atņemšana,reizināšana,sadalīšana]

# Izsauciet funkciju un saglabājiet atgriešanas vērtības kartē
listVar=listFunc()
# Izdrukājiet saraksta datu formatēto izvadi
drukāt(' n%5.2f + %5.2f = %5.2f '%(listVar[0],listVar[1],listVar[2]))
drukāt(' %5.2f - %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[3]))
drukāt(' %5.2f x %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[4]))
drukāt(' %5.2f / %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[5]))

Izeja

Pēc divu skaitļu, 67 un 23,7, uzņemšanas parādīsies šāda izvade.

4. piemērs. Atgrieziet vairākas vērtības no funkcijas, izmantojot vārdnīcu

Šis skripts parāda, kā izmantot vārdnīcu, lai no funkcijas atgrieztu vairākas vērtības. Šī ir vēl viena iespēja, lai no funkcijas atgrieztu daudzas vērtības. Vārdnīcas objekta mainīgais ar nosaukumu dictVar tiek deklarēts funkcijas iekšpusē. Mainīgajam tiek piešķirtas trīs vērtības un atgriež vērtību dicVar zvanītājam. Tālāk tiek izdrukātas vārdnīcas vērtības.

#!/usr/bin/env python3
# Definējiet funkciju, lai atgrieztu vairākas vērtības kā vārdnīcu
defdictFunc():
# Deklarējiet vārdnīcas mainīgo
dictVar= dikti();
# Piešķiriet dažas vērtības
dictVar['vārds'] = 'Kelli Ali'
dictVar['vecums'] = 46
dictVar['profesija'] = 'Dziedātājs'
# Atgrieziet vārdnīcu kā atgriešanās vērtības
atgrieztiesdictVar

# Izsauciet funkciju un saglabājiet atgriešanās vērtības vārdnīcas mainīgajā
dictValues=dictFunc()
# Izdrukājiet vārdnīcas vērtības
drukāt('Vārdnīcas vērtības ir šādas: n',dictValues)

Izeja

Pēc skripta palaišanas parādīsies šāda izvade.

5. piemērs. Atgrieziet vairākas vērtības no funkcijas, izmantojot objektu

Klase tiek izmantota ar funkciju, lai atgrieztu vairākas vērtības kā objektu no funkcijas šādā skriptā. Kad objFunc () funkcija izsauc, funkcija inicializē objektu no Darbinieki klasi un atgriež objektu zvanītājam. Tālāk tiks izdrukātas objekta rekvizītu vērtības.

#!/usr/bin/env python3

# Definējiet klasi, lai inicializētu objektu
klaseDarbinieki:
def __tajā__(sevi):
sevi.vārds = 'Mosarofs Karims'
sevi.ziņu = 'Pārvaldnieks'
sevi.alga = 50 000

# Definējiet funkciju, lai atgrieztu vērtības kā objektu
defobjFunc():
atgrieztiesDarbinieki()

# Izsauciet funkciju, lai iestatītu objekta mainīgo
objVar=objFunc()

# Izdrukājiet formatēto izvadi
drukāt(' nDarbinieka vārds:',objVar.vārds,' n','Ziņa:',objVar.ziņu,' n','Alga:',
objVar.alga)

Izeja

Pēc skripta palaišanas parādīsies šāda izvade.

Secinājums

Skriptā dažādiem mērķiem var izmantot vairākas funkcijas atdeves vērtības. Šī apmācība parādīja dažus dažādus veidus, kā atgriezt vairākas vērtības no funkcijas Python.

Skatieties autora video: šeit