Vrati više vrijednosti iz Python funkcije

Return Multiple Values From Python Function



Funkcija se koristi u bilo kojem programskom jeziku za pokretanje određenog bloka koda više puta po potrebi i pravilno organiziranje koda. Ponekad to zahtijeva čitanje povratne vrijednosti funkcije za potrebe programiranja. Povratna vrijednost funkcije pohranjena je u varijabli. Python funkcije mogu vratiti pojedinačne i višestruke vrijednosti. Ovaj vodič prikazuje kako se više funkcija može vratiti iz Python funkcija s više varijabli, objekata, tuplea, popisa i rječnika.

Primjer 1: Vratite više vrijednosti iz funkcije pomoću više varijabli

Ako želite vratiti samo nekoliko varijabli iz Python funkcije, bolje je definirati te varijable za spremanje višestrukih povratnih vrijednosti iz više varijabli, objekata, tuplea, popisa i rječnika pomoću funkcije. U ovom primjeru, tri varijable su deklarirane u skripti za spremanje tri povratne vrijednosti. The multiVarFunc () funkcija se koristi za uzimanje tri ulazne vrijednosti i vraćanje vrijednosti u varijable dept_name, total_std i ukupno_fac .







#!/usr/bin/env python3

# Definirajte funkciju za vraćanje više varijabli
defmultiVarFunc():
# Uzmite niz podataka
dubina= ulazni('Unesite naziv odjela:')
# Uzmite numeričke podatke
stdnum= int(ulazni('Unesite ukupan broj učenika:'))
# Uzmite numeričke podatke
facnum= int(ulazni('Unesite broj ukupnih fakulteta:'))
# Vrati više varijabli
povratakdubina,stdnum,facnum;

# Pozovite funkciju i pohranite povratne vrijednosti u tri varijable
ime_odjela,ukupno_std,ukupno_fac=multiVarFunc()
# Ispišite formatirani izlaz povratnih vrijednosti
ispisati(' nOdjel:%s nUkupno učenika:%d nUkupno sposobnosti:%d '%(ime_odjela,ukupno_std,
ukupno_fac))

Izlaz



Tri vrijednosti se uzimaju kao ulazi, a izlazne vrijednosti se ispisuju nakon formatiranja.







Primjer 2: Vratite više vrijednosti iz funkcije koristeći tuple

Sljedeća skripta pokazuje kako koristiti tuple za vraćanje više vrijednosti iz funkcije. Ako želite vratiti mnoge vrijednosti iz funkcije, ovo je bolja opcija. Ovdje, tupleFunc () Funkcija se koristi za preuzimanje četiri ulazne vrijednosti od korisnika i vraćanje vrijednosti kao tuplea pozivatelju. Povratne vrijednosti bit će pohranjene u varijabli tuple imena tupleVar a vrijednosti će se kasnije ispisati.

#!/usr/bin/env python3

# Definirajte funkciju za vraćanje više varijabli
deftupleFunc():
# Uzmite niz podataka
stdID= ulazni('Unesite studentski ID:')
# Uzmite niz podataka
stdName= ulazni('Unesite ime učenika:')
# Uzmite cijeli broj podataka
stdBatch= int(ulazni('Unesite broj serije:'))
# Uzmite float podatke
stdCGPA= plutati(ulazni('Unesite CGPA:'))
# Vratite više varijabli kao tuple
povratak (stdID,stdName,stdBatch,stdCGPA)

# Pozovite funkciju i spremite povratne vrijednosti u tuple
tupleVar=tupleFunc()
# Ispišite formatirani izlaz torte
ispisati(' nID:%s nIme:%s nSkup:%d nCGPA: %4.2f '%(tupleVar[0],tupleVar[1],tupleVar[2],
tupleVar[3]))

Izlaz



Četiri ulazne vrijednosti se uzimaju kao ulazne, a zatim se ispisuju formatirane izlazne vrijednosti.

Primjer 3: Vratite više vrijednosti iz funkcije pomoću popisa

Sljedeća skripta pokazuje kako koristiti popis za vraćanje više vrijednosti iz funkcije. Ovo je još jedna mogućnost za vraćanje mnogih vrijednosti iz funkcije. The listFunc () funkcija se koristi u skripti za preuzimanje dva cijela broja od korisnika i izračunavanje zbrajanja, oduzimanja, množenja i dijeljenja ovih brojeva. Zatim se ova četiri rezultata vraćaju kao popis iz funkcije. Varijabla popisa, listVar koristi se za spremanje povratnih vrijednosti i ispis vrijednosti.

#!/usr/bin/env python3

# Definirajte funkciju za vraćanje više vrijednosti kao popis
deflistFunc():
# Uzmite numeričke podatke
broj 1= plutati(ulazni('Unesite bilo koji broj:'))
# Uzmite numeričke podatke
broj 2= plutati(ulazni('Unesite bilo koji broj:'))

dodatak=broj1 + broj2
oduzimanje=broj1 - broj2
množenje=broj1 * broj2
podjela=broj1 / broj2

# Vratite više varijabli kao popis
povratak [broj 1,broj 2,dodatak,oduzimanje,množenje,podjela]

# Pozovite funkciju i spremite povratne vrijednosti u tuple
listVar=listFunc()
# Ispišite formatirani izlaz podataka s popisa
ispisati(' n%5.2f + %5.2f = %5.2f '%(listVar[0],listVar[1],listVar[2]))
ispisati(' %5.2f - %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[3]))
ispisati(' %5.2f x %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[4]))
ispisati(' %5.2f / %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[5]))

Izlaz

Nakon uzimanja dva broja, 67 i 23.7, pojavit će se sljedeći izlaz.

Primjer 4: Vratite više vrijednosti iz funkcije pomoću rječnika

Sljedeća skripta pokazuje kako koristiti rječnik za vraćanje više vrijednosti iz funkcije. Ovo je još jedna mogućnost za vraćanje mnogih vrijednosti iz funkcije. Promjenjiva objektna varijabla rječnika dictVar je deklarirano unutar funkcije. Varijabli se dodjeljuju tri vrijednosti i vraćaju dicVar do pozivatelja. Zatim se ispisuju vrijednosti rječnika.

#!/usr/bin/env python3
# Definirajte funkciju za vraćanje više vrijednosti kao rječnik
defdictFunc():
# Deklarirajte rječničku varijablu
dictVar= dikt();
# Dodijelite neke vrijednosti
dictVar['Ime'] = 'Kelli Ali'
dictVar['dob'] = 46
dictVar['profesija'] = 'Pjevač'
# Vratite rječnik kao povratne vrijednosti
povratakdictVar

# Pozovite funkciju i spremite povratne vrijednosti u rječničku varijablu
dictValues=dictFunc()
# Ispišite vrijednosti rječnika
ispisati('Vrijednosti rječnika su: n',dictValues)

Izlaz

Sljedeći izlaz pojavit će se nakon pokretanja skripte.

Primjer 5: Vratite više vrijednosti iz funkcije pomoću objekta

Klasa se koristi s funkcijom za vraćanje više vrijednosti kao objekt iz funkcije u sljedećoj skripti. Kada objFunc () poziva funkcije, funkcija inicijalizira objekt iz Zaposlenici klase i vraća objekt pozivatelju. Zatim će se ispisati vrijednosti svojstava objekta.

#!/usr/bin/env python3

# Definirajte klasu za incijalizaciju objekta
razredZaposlenici:
def __u tome__(sebe):
sebe.Ime = 'Mosarof Karim'
sebe.post = 'Menadžer'
sebe.plaća = 50.000

# Definirajte funkciju za vraćanje vrijednosti kao objekt
defobjFunc():
povratakZaposlenici()

# Pozovite funkciju za postavljanje varijable objekta
objVar=objFunc()

# Ispišite formatirani izlaz
ispisati(' nIme zaposlenika:',objVar.Ime,' n','Post:',objVar.post,' n','Plaća:',
objVar.plaća)

Izlaz

Sljedeći izlaz pojavit će se nakon pokretanja skripte.

Zaključak

Više se povratnih vrijednosti funkcije može koristiti u skripti za različite svrhe. Ovaj vodič pokazao je neke od različitih načina vraćanja više vrijednosti iz funkcije u Pythonu.

Pogledajte video snimak autora: ovdje