Tagastage Pythoni funktsioonist mitu väärtust

Return Multiple Values From Python Function



Funktsiooni kasutatakse mis tahes programmeerimiskeeles, et käivitada teatud koodiplokk mitu korda ja vajadusel seda õigesti korraldada. Mõnikord nõuab see programmeerimise eesmärgil funktsiooni tagastusväärtuse lugemist. Funktsiooni tagastusväärtus salvestatakse muutujaga. Pythoni funktsioonid võivad tagastada nii ühe- kui ka mitu väärtust. See õpetus näitab, kuidas saab Python -funktsioonidest tagastada mitu väärtust koos mitme muutuja, objekti, koopia, loendi ja sõnastikuga.

Näide 1: tagastage funktsioonist mitu väärtust, kasutades mitut muutujat

Kui soovite Pythoni funktsioonist tagastada vaid mõned muutujad, siis on parem need muutujad määratleda, et salvestada funktsiooni kasutades mitmed muutujad, objektid, liigid, loendid ja sõnastikud. Selles näites on skriptis deklareeritud kolm muutujat kolme tagastusväärtuse salvestamiseks. The multiVarFunc () funktsiooni kasutatakse kolme sisendväärtuse võtmiseks ja väärtuste tagastamiseks muutujatele osakonna_nimi, kokku_std ja total_fac .







#!/usr/bin/env python3

# Määrake funktsioon mitme muutuja tagastamiseks
defmultiVarFunc():
# Võtke stringi andmed
osakond= sisend('Sisestage osakonna nimi:')
# Võtke arvandmeid
stdnum= int(sisend('Sisestage õpilaste koguarv:'))
# Võtke arvandmeid
facnum= int(sisend('Sisestage teaduskondade koguarv:'))
# Tagastage mitu muutujat
tagasiosakond,stdnum,facnum;

# Helistage funktsioonile ja salvestage tagastusväärtused kolme muutujaga
osakonna_nimi,kokku_std,total_fac=multiVarFunc()
# Printige tagastamisväärtuste vormindatud väljund
printida(' nOsakond:%s nÕpilasi kokku:%d nTeaduskonnad kokku:%d '%(osakonna_nimi,kokku_std,
total_fac))

Väljund



Sisenditeks võetakse kolm väärtust ja väljundväärtused prinditakse pärast vormindamist.







Näide 2: Tagastab funktsiooni abil mitu väärtust, kasutades tuple

Järgmine skript näitab, kuidas kasutada tuppi funktsiooni mitme väärtuse tagastamiseks. Kui soovite funktsioonist palju väärtusi tagastada, on see parem valik. Siin, tupleFunc () funktsiooni kasutatakse kasutajalt nelja sisendväärtuse võtmiseks ja väärtuste tagasipöördumiseks helistajale. Tagastusväärtused salvestatakse tuplemuutuja nimega tupleVar ja väärtused trükitakse hiljem.

#!/usr/bin/env python3

# Määrake funktsioon mitme muutuja tagastamiseks
deftupleFunc():
# Võtke stringi andmed
stdID= sisend('Sisestage õpilase ID:')
# Võtke stringi andmed
stdName= sisend('Sisestage õpilase nimi:')
# Võtke täisarvulised andmed
stdBatch= int(sisend('Sisestage partii nr:'))
# Võtke ujukandmed
stdCGPA= hõljuma(sisend('Sisestage CGPA:'))
# Tagastab mitu muutujat liigina
tagasi (stdID,stdName,stdBatch,stdCGPA)

# Helistage funktsioonile ja salvestage tagastusväärtused kogumisse
tupleVar=tupleFunc()
# Printige vormindatud väljund
printida(' nID:%s nNimi:%s nPartii:%d nCGPA: %4.2f '%(tupleVar[0],tupleVar[1],tupleVar[2],
tupleVar[3]))

Väljund



Neli sisendväärtust võetakse sisendiks ja seejärel prinditakse vormindatud väljundväärtused.

Näide 3: tagastage loendit kasutades funktsioonist mitu väärtust

Järgmine skript näitab, kuidas kasutada loendit funktsioonilt mitme väärtuse tagastamiseks. See on veel üks võimalus funktsioonilt paljude väärtuste tagastamiseks. The listFunc () funktsiooni kasutatakse skriptis, et võtta kasutajalt kaks täisarvu ja arvutada nende numbrite liitmine, lahutamine, korrutamine ja jagamine. Seejärel tagastatakse need neli tulemust funktsioonina loendina. Loendi muutuja, listVar kasutatakse tagastusväärtuste salvestamiseks ja väärtuste printimiseks.

#!/usr/bin/env python3

# Määrake funktsioon mitme väärtuse loendina tagastamiseks
deflistFunc():
# Võtke arvandmeid
number1= hõljuma(sisend('Sisestage mis tahes number:'))
# Võtke arvandmeid
number2= hõljuma(sisend('Sisestage mis tahes number:'))

lisamine=number1 + number2
lahutamine=number1 - number2
korrutamine=number1 * number2
jagunemine=number1 / number2

# Taastage loendina mitu muutujat
tagasi [number1,number2,lisamine,lahutamine,korrutamine,jagunemine]

# Helistage funktsioonile ja salvestage tagastusväärtused kogumisse
listVar=listFunc()
# Printige loendi andmete vormindatud väljund
printida(' n%5.2f + %5.2f = %5.2f '%(listVar[0],listVar[1],listVar[2]))
printida(' %5.2f - %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[3]))
printida(' %5.2f x %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[4]))
printida(' %5.2f / %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[5]))

Väljund

Pärast kahe numbri 67 ja 23,7 võtmist kuvatakse järgmine väljund.

Näide 4: tagastage sõnastikku kasutades funktsioonist mitu väärtust

Järgmine skript näitab, kuidas kasutada sõnastikku funktsioonilt mitme väärtuse tagastamiseks. See on veel üks võimalus funktsioonilt paljude väärtuste tagastamiseks. Sõnastiku objekti muutuja nimega dictVar on deklareeritud funktsiooni sees. Muutujale määratakse kolm väärtust ja tagastatakse dicVar helistajale. Järgmisena trükitakse sõnastiku väärtused.

#!/usr/bin/env python3
# Määrake funktsioon mitme väärtuse sõnastikuna tagastamiseks
defdictFunc():
# Kuulutage sõnastiku muutuja
dictVar= dikteerima();
# Määrake mõned väärtused
dictVar['nimi'] = 'Kelli Ali'
dictVar['vanus'] = 46
dictVar['elukutse'] = 'Laulja'
# Tagastage sõnastik tagastusväärtustena
tagasidictVar

# Helistage funktsioonile ja salvestage tagastusväärtused sõnastiku muutujale
dictValues=dictFunc()
# Printige sõnastiku väärtused
printida('Sõnastiku väärtused on järgmised: n',dictValues)

Väljund

Pärast skripti käivitamist kuvatakse järgmine väljund.

Näide 5: tagastage objekti abil funktsioonist mitu väärtust

Klassi kasutatakse koos funktsiooniga mitme väärtuse tagastamiseks objektina järgmises skriptis. Kui objFunc () Funktsioonikõnede korral lähtestab funktsioon objekti Töötajad klassi ja tagastab objekti helistajale. Järgmisena prinditakse objekti omaduste väärtused.

#!/usr/bin/env python3

# Määratle klass objekti initsialiseerimiseks
klassiTöötajad:
def __selles__(mina):
mina.nimi = 'Mosarof Karim'
mina.postitada = 'Juhataja'
mina.palk = 50 000

# Määrake funktsioon väärtuste tagastamiseks objektina
defobjFunc():
tagasiTöötajad()

# Objekti muutuja määramiseks helistage sellele funktsioonile
objVar=objFunc()

# Printige vormindatud väljund
printida(' nTöötaja nimi: ',objVar.nimi,' n','Postitus:',objVar.postitada,' n','Palk:',
objVar.palk)

Väljund

Pärast skripti käivitamist kuvatakse järgmine väljund.

Järeldus

Skriptis saab erinevatel eesmärkidel kasutada funktsiooni mitut tagastusväärtust. See õpetus näitas mõningaid erinevaid viise mitmete väärtuste tagastamiseks Pythoni funktsioonist.

Vaata autori videot: siin