Restituisce più valori da una funzione Python

Return Multiple Values From Python Function



La funzione viene utilizzata in qualsiasi linguaggio di programmazione per eseguire più volte uno specifico blocco di codice quando è necessario e organizzare correttamente il codice. A volte, ciò richiede la lettura del valore restituito dalla funzione per scopi di programmazione. Il valore restituito dalla funzione è memorizzato in una variabile. Le funzioni Python possono restituire sia valori singoli che multipli. Questo tutorial mostra come possono essere restituiti più valori dalle funzioni Python con più variabili, oggetti, tuple, elenchi e dizionari.

Esempio 1: restituisce più valori dalla funzione utilizzando più variabili

Se si desidera restituire solo poche variabili dalla funzione Python, è meglio definire queste variabili per memorizzare i valori restituiti multipli dalle variabili multiple, oggetti, tuple, elenchi e dizionari utilizzando la funzione. In questo esempio, nello script vengono dichiarate tre variabili per memorizzare tre valori restituiti. Il multiVarFunc() la funzione viene utilizzata per prendere tre valori di input e restituire i valori alle variabili nome_dipartimento, std_totale e total_fac .







#!/usr/bin/env python3

# Definisci la funzione per restituire più variabili
defmultiVarFunc():
# Prendi una stringa di dati
Dipartimento= ingresso('Inserisci il nome del reparto: ')
# Prendi un dato numerico
stdnum= int(ingresso('Inserisci il numero di studenti totali: '))
# Prendi un dato numerico
facnum= int(ingresso('Inserisci il numero di facoltà totali: '))
# Restituisce più variabili
RestituzioneDipartimento,stdnum,facnum;

# Chiama la funzione e memorizza i valori restituiti in tre variabili
nome_dipartimento,totale_std,total_fac=multiVarFunc()
# Stampa l'output formattato dei valori restituiti
Stampa(' Dipartimento:%s Studenti totali:%d Facoltà totali:%d'%(nome_dipartimento,totale_std,
total_fac))

Produzione



Tre valori vengono presi come input e i valori di output vengono stampati dopo la formattazione.







Esempio 2: restituisce più valori dalla funzione utilizzando la tupla

Lo script seguente mostra come utilizzare una tupla per restituire più valori da una funzione. Se vuoi restituire molti valori dalla funzione, questa è un'opzione migliore. qui, il tupleFunc() La funzione viene utilizzata per prendere quattro valori di input dall'utente e restituire i valori come tupla al chiamante. I valori restituiti verranno memorizzati in una variabile di tupla denominata tupleVar e i valori verranno stampati in seguito.

#!/usr/bin/env python3

# Definisci la funzione per restituire più variabili
deftupleFunc():
# Prendi una stringa di dati
stdID= ingresso('Inserisci l'ID studente:')
# Prendi una stringa di dati
nomestd= ingresso('Inserisci il nome dello studente: ')
# Prendi un dato intero
stdBatch= int(ingresso('Inserire il numero di lotto: '))
# Prendi un dato float
stdCGPA= galleggiante(ingresso('Inserisci il CGPA: '))
# Restituisce più variabili come una tupla
Restituzione (stdID,nomestd,stdBatch,stdCGPA)

# Chiama la funzione e memorizza i valori restituiti in una tupla
tupleVar=tupleFunc()
# Stampa l'output formattato della tupla
Stampa(' ID:%s Nome:%s Lotto:%d CGPA: %4.2f'%(tupleVar[0],tupleVar[1],tupleVar[2],
tupleVar[3]))

Produzione



I quattro valori di input vengono presi mentre i valori di input e output formattati vengono quindi stampati.

Esempio 3: restituire più valori dalla funzione utilizzando l'elenco

Lo script seguente mostra come utilizzare un elenco per restituire più valori da una funzione. Questa è un'altra opzione per restituire molti valori da una funzione. Il listFunc() La funzione viene utilizzata nello script per prendere due numeri interi dall'utente e calcolare l'addizione, la sottrazione, la moltiplicazione e la divisione di questi numeri. Successivamente, questi quattro risultati vengono restituiti come elenco dalla funzione. La variabile lista, listVar viene utilizzato per memorizzare i valori restituiti e stampare i valori.

#!/usr/bin/env python3

# Definisci la funzione per restituire più valori come un elenco
deflistFunc():
# Prendi un dato numerico
numero 1= galleggiante(ingresso('Inserisci un numero:'))
# Prendi un dato numerico
numero 2= galleggiante(ingresso('Inserisci un numero:'))

addizione=numero1 + numero2
sottrazione=numero1 - numero2
moltiplicazione=numero1 * numero2
divisione=numero1 / numero2

# Restituisce più variabili come una lista
Restituzione [numero 1,numero 2,addizione,sottrazione,moltiplicazione,divisione]

# Chiama la funzione e memorizza i valori restituiti in una tupla
listVar=listFunc()
# Stampa l'output formattato dei dati della lista
Stampa(' %5.2f + %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[2]))
Stampa('%5.2f - %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[3]))
Stampa('%5.2f x %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[4]))
Stampa('%5.2f / %5.2f = %5.2f'%(listVar[0],listVar[1],listVar[5]))

Produzione

Dopo aver preso due numeri, 67 e 23.7, apparirà il seguente output.

Esempio 4: restituire più valori dalla funzione utilizzando il dizionario

Lo script seguente mostra come utilizzare un dizionario per restituire più valori da una funzione. Questa è un'altra opzione per restituire molti valori da una funzione. Una variabile oggetto del dizionario denominata dictVar viene dichiarato all'interno della funzione. Alla variabile vengono assegnati tre valori e restituiscono il dicVar al chiamante. Successivamente, vengono stampati i valori del dizionario.

#!/usr/bin/env python3
# Definisci la funzione per restituire i valori multipli come un dizionario
defdictFunc():
# Dichiara una variabile del dizionario
dictVar= detto();
# Assegna alcuni valori
dictVar['nome'] = 'Kelli Alì'
dictVar['età'] = 46
dictVar['professione'] = 'Cantante'
# Restituisce il dizionario come valori di ritorno
RestituzionedictVar

# Chiama la funzione e memorizza i valori restituiti in una variabile del dizionario
dictValues=dictFunc()
# Stampa i valori del dizionario
Stampa('I valori del dizionario sono: ',dictValues)

Produzione

Il seguente output apparirà dopo aver eseguito lo script.

Esempio 5: restituire più valori dalla funzione utilizzando object

Una classe viene utilizzata con una funzione per restituire più valori come oggetto dalla funzione nello script seguente. Quando il objFunc() chiamate di funzione, la funzione inizializza l'oggetto dal Dipendenti class e restituisce l'oggetto al chiamante. Successivamente, verranno stampati i valori delle proprietà dell'oggetto.

#!/usr/bin/env python3

# Definisci la classe per inizializzare l'oggetto
classeDipendenti:
def __dentro__(se stesso):
se stesso.nome = 'Mosar di Karim'
se stesso.inviare = 'Manager'
se stesso.stipendio = 50.000

# Definisci la funzione per restituire valori come oggetto
defobjFunc():
RestituzioneDipendenti()

# Chiama la funzione per impostare la variabile oggetto
objVar=objFunc()

# Stampa l'output formattato
Stampa(' Nome dipendente:',objVar.nome,' ','Inviare:',objVar.inviare,' ','Stipendio:',
objVar.stipendio)

Produzione

Il seguente output apparirà dopo aver eseguito lo script.

Conclusione

Più valori restituiti da una funzione possono essere utilizzati nello script per vari scopi. Questo tutorial ha mostrato alcuni dei diversi modi per restituire più valori da una funzione in Python.

Guarda il video dell'autore: qui