Grąžinkite kelias reikšmes iš „Python“ funkcijos

Return Multiple Values From Python Function



Funkcija naudojama bet kuria programavimo kalba, kad prireikus kelis kartus paleistų tam tikrą kodo bloką ir tinkamai jį sutvarkytų. Kartais programavimo tikslais reikia perskaityti funkcijos grąžinimo vertę. Funkcijos grąžinimo vertė saugoma kintamajame. „Python“ funkcijos gali grąžinti tiek vieną, tiek kelias vertes. Ši pamoka parodo, kaip galima grąžinti kelias reikšmes iš „Python“ funkcijų naudojant kelis kintamuosius, objektus, kartotines, sąrašus ir žodynus.

1 pavyzdys: grąžinkite kelias reikšmes iš funkcijos naudodami kelis kintamuosius

Jei norite grąžinti tik kelis kintamuosius iš funkcijos „Python“, geriau apibrėžti šiuos kintamuosius, kad naudojant šią funkciją būtų saugomos kelios grąžos vertės iš kelių kintamųjų, objektų, kartotinių, sąrašų ir žodynų. Šiame pavyzdyje scenarijuje deklaruojami trys kintamieji, kad būtų išsaugotos trys grąžinimo vertės. The multiVarFunc () funkcija naudojama trims įvesties reikšmėms paimti ir reikšmėms grąžinti į kintamuosius skyriaus pavadinimas, total_std ir total_fac .







#!/usr/bin/env python3

# Apibrėžkite funkciją, kad grąžintumėte kelis kintamuosius
defmultiVarFunc():
# Paimkite eilutės duomenis
katedra= įvesties(„Įveskite skyriaus pavadinimą:“)
# Paimkite skaitmeninius duomenis
stdnum= tarpt(įvesties(„Įveskite bendrą mokinių skaičių:“))
# Paimkite skaitmeninius duomenis
facnum= tarpt(įvesties(„Įveskite visų fakultetų skaičių:“))
# Pateikite kelis kintamuosius
grįžtikatedra,stdnum,facnum;

# Iškvieskite funkciją ir išsaugokite grąžos vertes trijuose kintamuosiuose
departamento_pavadinimas,total_std,total_fac=multiVarFunc()
# Spausdinkite suformatuotą grąžinimo verčių išvestį
spausdinti(' nSkyrius:%s nIš viso studentų:%d nIš viso fakultetų:%d '%(departamento_pavadinimas,total_std,
total_fac))

Išvestis



Trys vertės laikomos įvestimi, o išvesties vertės atspausdinamos po formatavimo.







2 pavyzdys: grąžinkite kelias reikšmes iš funkcijos naudodami kortelę

Šis scenarijus parodo, kaip naudoti rinkinį, kad būtų grąžintos kelios funkcijos reikšmės. Jei norite grąžinti daug funkcijų verčių, tai yra geresnis pasirinkimas. Čia, tupleFunc () Ši funkcija naudojama iš vartotojo paimti keturias įvesties reikšmes ir grąžinti jas kaip kartotuvą skambinančiajam. Grąžinamosios vertės bus saugomos kartotiniame kintamajame, pavadintame tupleVar ir vertės bus atspausdintos vėliau.

#!/usr/bin/env python3

# Apibrėžkite funkciją, kad grąžintumėte kelis kintamuosius
deftupleFunc():
# Paimkite eilutės duomenis
stdID= įvesties(„Įveskite studento ID:“)
# Paimkite eilutės duomenis
stdName= įvesties(„Įveskite mokinio vardą:“)
# Paimkite sveikų skaičių duomenis
stdBatch= tarpt(įvesties(„Įveskite partijos numerį:“))
# Paimkite plūdės duomenis
stdCGPA= plūdė(įvesties(„Įveskite CGPA:“))
# Grąžinkite kelis kintamuosius kaip kartoteką
grįžti (stdID,stdName,stdBatch,stdCGPA)

# Iškvieskite šią funkciją ir išsaugokite grąžinimo vertes eilutėje
tupleVar=tupleFunc()
# Spausdinkite suformatuotą rinkinį
spausdinti(' nID:%s nPavadinimas:%s nPaketas:%d nCGPA: %4.2f '%(tupleVar[0],tupleVar[1],tupleVar[2],
tupleVar[3]))

Išvestis



Keturios įvesties vertės imamos kaip įvesties ir tada spausdinamos suformatuotos išvesties vertės.

3 pavyzdys: Naudodami sąrašą grąžinkite kelias reikšmes iš funkcijos

Šis scenarijus parodo, kaip naudoti sąrašą, kad būtų grąžintos kelios funkcijos reikšmės. Tai dar viena galimybė grąžinti daug funkcijų reikšmių. The listFunc () funkcija naudojama scenarijuje paimti iš vartotojo du sveikus skaičius ir apskaičiuoti šių skaičių pridėjimą, atėmimą, dauginimą ir padalijimą. Tada šie keturi rezultatai grąžinami kaip funkcijos sąrašas. Sąrašo kintamasis, listVar naudojamas grąžinimo vertėms saugoti ir reikšmėms spausdinti.

#!/usr/bin/env python3

# Apibrėžkite funkciją, kad pateiktumėte kelias vertes kaip sąrašą
deflistFunc():
# Paimkite skaitmeninius duomenis
numeris 1= plūdė(įvesties(„Įveskite bet kurį numerį:“))
# Paimkite skaitmeninius duomenis
skaičius2= plūdė(įvesties(„Įveskite bet kurį numerį:“))

papildymas=skaičius1 + skaičius2
atimtis=skaičius1 - skaičius2
daugyba=skaičius1 * skaičius2
padalijimas=skaičius1 / skaičius2

# Pateikite kelis kintamuosius kaip sąrašą
grįžti [numeris 1,skaičius2,papildymas,atimtis,daugyba,padalijimas]

# Iškvieskite šią funkciją ir išsaugokite grąžinimo vertes eilutėje
listVar=listFunc()
# Spausdinkite suformatuotą sąrašo duomenų išvestį
spausdinti(' n%5.2f + %5.2f = %5.2f '%(listVar[0],listVar[1],listVar[2]))
spausdinti(' %5.2f - %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[3]))
spausdinti(' %5.2f x %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[4]))
spausdinti(„ %5.2f / %5.2f = %5.2f“%(listVar[0],listVar[1],listVar[5]))

Išvestis

Paėmus du skaičius, 67 ir 23.7, pasirodys toks rezultatas.

4 pavyzdys: grąžinkite kelias reikšmes iš funkcijos naudodami žodyną

Šis scenarijus parodo, kaip naudoti žodyną, norint grąžinti kelias funkcijos reikšmes. Tai dar viena galimybė grąžinti daug funkcijų reikšmių. Žodyno objekto kintamasis pavadintas dictVar yra deklaruojamas funkcijos viduje. Kintamajam priskiriamos trys vertės ir grąžinama dicVar skambinančiajam. Toliau spausdinamos žodyno reikšmės.

#!/usr/bin/env python3
# Apibrėžkite funkciją, kad pateiktumėte kelias reikšmes kaip žodyną
defdictFunc():
# Paskelbkite žodyno kintamąjį
dictVar= diktuoti();
# Priskirkite tam tikras vertes
dictVar['vardas'] = „Kelli Ali“
dictVar['amžius'] = 46
dictVar['profesija'] = „Dainininkas“
# Grąžinkite žodyną kaip grąžinimo vertes
grįžtidictVar

# Iškvieskite funkciją ir išsaugokite grąžinimo reikšmes žodyno kintamajame
dictValues=dictFunc()
# Spausdinkite žodyno reikšmes
spausdinti(„Žodyno vertybės yra šios: n',dictValues)

Išvestis

Paleidus scenarijų pasirodys ši išvestis.

5 pavyzdys: grąžinkite kelias reikšmes iš funkcijos naudodami objektą

Klasė naudojama su funkcija, kad būtų galima grąžinti kelias reikšmes kaip objekto funkciją iš šio scenarijaus. Kai objFunc () funkcija iškviečia, funkcija inicijuoja objektą iš Darbuotojai klasę ir grąžina objektą skambinančiajam. Tada bus atspausdintos objekto savybių vertės.

#!/usr/bin/env python3

# Apibrėžkite klasę, kad objektas būtų inicializuotas
klasėDarbuotojai:
def __init__(savarankiškai):
savarankiškai.vardas = „Mosarofas Karimas“
savarankiškai.paštu = „Vadybininkas“
savarankiškai.atlyginimas = 50 000

# Apibrėžkite funkciją grąžinti vertes kaip objektą
defobjFunc():
grįžtiDarbuotojai()

# Paskambinkite funkcijai, kad nustatytumėte objekto kintamąjį
objVar=objFunc()

# Spausdinkite suformatuotą išvestį
spausdinti(' nDarbuotojo vardas:',objVar.vardas,' n','Įrašas:',objVar.paštu,' n','Atlyginimas:',
objVar.atlyginimas)

Išvestis

Paleidus scenarijų pasirodys ši išvestis.

Išvada

Scenarijuje gali būti naudojamos įvairios funkcijos grąžinimo vertės įvairiems tikslams. Ši pamoka parodė keletą skirtingų būdų grąžinti kelias reikšmes iš funkcijos „Python“.

Žiūrėkite autoriaus vaizdo įrašą: čia