Palauta useita arvoja Python -toiminnosta

Return Multiple Values From Python Function



Toimintoa käytetään millä tahansa ohjelmointikielellä tietyn koodilohkon suorittamiseksi useita kertoja tarvittaessa ja järjestää koodi oikein. Joskus tämä edellyttää funktion palautusarvon lukemista ohjelmointitarkoituksiin. Funktion paluuarvo tallennetaan muuttujaan. Python -toiminnot voivat palauttaa sekä yksittäisiä että useita arvoja. Tämä opetusohjelma näyttää, kuinka useita arvoja voidaan palauttaa Python -toiminnoista useilla muuttujilla, objekteilla, tupleilla, luetteloilla ja sanakirjoilla.

Esimerkki 1: Palauta useita arvoja funktiosta käyttämällä useita muuttujia

Jos haluat palauttaa vain muutamia muuttujia Python -funktiosta, on parempi määritellä nämä muuttujat tallentamaan useat palautusarvot useista muuttujista, objekteista, tupleista, luetteloista ja sanakirjoista toiminnon avulla. Tässä esimerkissä kolme muuttujaa ilmoitetaan komentosarjassa kolmen palautusarvon tallentamiseksi. The multiVarFunc () -toimintoa käytetään kolmen syöttöarvon ottamiseen ja arvojen palauttamiseen muuttujille osaston_nimi, yhteensä_std ja total_fac .







#!/usr/bin/env python3

# Määritä toiminto, joka palauttaa useita muuttujia
defmultiVarFunc():
# Ota merkkijonotiedot
osasto= tulo('Anna osaston nimi:')
# Ota numeerinen data
stdnum= int(tulo('Anna opiskelijoiden kokonaismäärä:'))
# Ota numeerinen data
facnum= int(tulo('Anna tiedekuntien kokonaismäärä:'))
# Palauta useita muuttujia
palataosasto,stdnum,facnum;

# Kutsu toiminto ja tallenna palautusarvot kolmeen muuttujaan
osaston_nimi,total_std,total_fac=multiVarFunc()
# Tulosta palautusarvojen muotoiltu tulostus
Tulosta('' nOsasto:%s nOpiskelijoita yhteensä:%d nTiedekuntia yhteensä:%d '%(osaston_nimi,total_std,
total_fac))

Lähtö



Tuloina käytetään kolmea arvoa ja lähtöarvot tulostetaan alustamisen jälkeen.







Esimerkki 2: Palauta useita arvoja funktiosta käyttämällä tuplea

Seuraava skripti näyttää, kuinka tuplen avulla voidaan palauttaa useita arvoja funktiosta. Jos haluat palauttaa monia arvoja funktiosta, tämä on parempi vaihtoehto. Tässä, tupleFunc () -toimintoa käytetään ottamaan neljä syöttöarvoa käyttäjältä ja palauttamaan arvot tupleina soittajalle. Palautusarvot tallennetaan tuple -muuttujaan nimeltä tupleVar ja arvot tulostetaan myöhemmin.

#!/usr/bin/env python3

# Määritä toiminto, joka palauttaa useita muuttujia
deftupleFunc():
# Ota merkkijonotiedot
stdID= tulo('Anna oppilaan tunnus:')
# Ota merkkijonotiedot
stdName= tulo('Anna oppilaan nimi:')
# Ota kokonaislukudata
stdBatch= int(tulo('' Anna eränumero: ''))
# Ota kelluvat tiedot
stdCGPA= kellua(tulo('Anna CGPA:'))
# Palauta useita muuttujia tupleina
palata (stdID,stdName,stdBatch,stdCGPA)

# Kutsu toiminto ja tallenna palautusarvot tupleiksi
tupleVar=tupleFunc()
# Tulosta tuplen muotoiltu lähtö
Tulosta('' nID:%s nNimi:%s nErä:%d nCGPA: %4.2f '%(tupleVar[0],tupleVar[1],tupleVar[2],
tupleVar[3]))

Lähtö



Tuloksi otetaan neljä tuloarvoa ja tulostetaan muotoillut lähtöarvot.

Esimerkki 3: Palauta useita arvoja funktiosta luettelon avulla

Seuraava skripti näyttää kuinka käyttää luetteloa useiden arvojen palauttamiseen funktiosta. Tämä on toinen vaihtoehto funktion monien arvojen palauttamiseksi. The listFunc () -toimintoa käytetään skriptissä ottamaan käyttäjältä kaksi kokonaislukua ja laskemaan näiden lukujen yhteenlasku, vähennys, kertolasku ja jako. Seuraavaksi nämä neljä tulosta palautetaan luettelona funktiosta. Luettelomuuttuja, listVar käytetään palautusarvojen tallentamiseen ja tulostamiseen.

#!/usr/bin/env python3

# Määritä toiminto, joka palauttaa useita arvoja luettelona
deflistFunc():
# Ota numeerinen data
numero 1= kellua(tulo('Anna mikä tahansa numero:'))
# Ota numeerinen data
numero 2= kellua(tulo('Anna mikä tahansa numero:'))

lisäys=numero1 + numero2
vähennyslasku=numero1 - numero2
kertolasku=numero1 * numero2
jako=numero1 / numero2

# Palauta useita muuttujia luettelona
palata [numero 1,numero 2,lisäys,vähennyslasku,kertolasku,jako]

# Kutsu toiminto ja tallenna palautusarvot tupleiksi
listVar=listFunc()
# Tulosta luettelotietojen muotoiltu lähtö
Tulosta('' n%5.2f + %5.2f = %5.2f '%(listVar[0],listVar[1],listVar[2]))
Tulosta(' %5.2f - %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[3]))
Tulosta(' %5.2f x %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[4]))
Tulosta(' %5.2f / %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[5]))

Lähtö

Kun olet ottanut kaksi numeroa, 67 ja 23.7, seuraava tulos tulee näkyviin.

Esimerkki 4: Palauta useita arvoja funktiosta sanakirjan avulla

Seuraava skripti näyttää kuinka sanakirjan avulla voidaan palauttaa useita arvoja funktiosta. Tämä on toinen vaihtoehto funktion monien arvojen palauttamiseksi. Sanakirjaobjektimuuttuja nimeltä dictVar ilmoitetaan funktion sisällä. Muuttujalle määritetään kolme arvoa ja palautetaan dicVar soittajalle. Seuraavaksi sanakirjan arvot tulostetaan.

#!/usr/bin/env python3
# Määritä toiminto, joka palauttaa useita arvoja sanakirjaksi
defdictFunc():
# Ilmoita sanakirjamuuttuja
dictVar= sanella();
# Määritä joitakin arvoja
dictVar['nimi'] = 'Kelli Ali'
dictVar['ikä'] = 46
dictVar['ammatti'] = 'Laulaja'
# Palauta sanakirja palautusarvoina
palatadictVar

# Kutsu toiminto ja tallenna palautusarvot sanakirjamuuttujaan
dictValues=dictFunc()
# Tulosta sanakirjan arvot
Tulosta('Sanakirjan arvot ovat: n'',dictValues)

Lähtö

Seuraava tulos tulee näkyviin komentosarjan suorittamisen jälkeen.

Esimerkki 5: Palauta useita arvoja funktiosta käyttämällä objektia

Luokkaa käytetään funktion kanssa useiden arvojen palauttamiseen objektina seuraavan komentosarjan funktiosta. Kun objFunc () toiminto kutsuu, toiminto alustaa objektin Työntekijät luokka ja palauttaa objektin soittajalle. Seuraavaksi objektin ominaisuusarvot tulostetaan.

#!/usr/bin/env python3

# Määritä luokka, joka alustaa objektin
luokkaTyöntekijät:
def __sen sisällä__(itse):
itse.nimi = 'Mosarof Karim'
itse.lähettää = 'Johtaja'
itse.palkka = 50000

# Määritä toiminto, joka palauttaa arvot objektina
defobjFunc():
palataTyöntekijät()

# Kutsu toiminto asettaaksesi objektimuuttujan
objVar=objFunc()

# Tulosta muotoiltu tulostus
Tulosta('' nTyöntekijän nimi:',objVar.nimi,'' n'','Lähettää:',objVar.lähettää,'' n'','Palkka:',
objVar.palkka)

Lähtö

Seuraava tulos tulee näkyviin komentosarjan suorittamisen jälkeen.

Johtopäätös

Useita funktion palautusarvoja voidaan käyttää komentosarjassa eri tarkoituksiin. Tämä opetusohjelma esitteli joitain eri tapoja palauttaa useita arvoja Python -funktiosta.

Katso tekijän video: tässä