Come richiamare una funzione in Python (Esempio)
In cosa consiste la funzione Python?
A Funzione dentro Python รจ un pezzo di codice che viene eseguito quando viene fatto riferimento. Viene utilizzato per utilizzare il codice in piรน di un punto in un programma. ร anche chiamato metodo o procedura. Python fornisce molte funzioni integrate come print(), input(), compile(), exec(), ecc. ma dร anche la libertร di creare le tue funzioni.
Come definire e chiamare una funzione Python
Funzione dentro Python รจ definito dal โdefinitivamenteโ istruzione seguita dal nome della funzione e dalle parentesi ( () )
Esempio:
Definiamo una funzione utilizzando il comando "def func1():" e chiamiamo la funzione. L'output della funzione sarร "Sto imparando Python funzione".
La funzione stampa funzione1() chiama la nostra def func1(): e stampa il comando โ sto imparando Python funzione Nessuna."
Ci sono una serie di regole in Python per definire una funzione.
- Eventuali argomenti o parametri di input devono essere inseriti all'interno di queste parentesi
- La prima istruzione della funzione puรฒ essere un'istruzione facoltativa-docstring o la stringa di documentazione della funzione
- Il codice all'interno di ogni funzione inizia con due punti (:) e deve essere rientrato (spazio)
- L'istruzione return (espressione) esce da una funzione, restituendo facoltativamente un valore al chiamante. Un'istruzione return senza argomenti รจ uguale a return None.
Significato del rientro (spazio) in Python
Prima di familiarizzare con Python funzioni, รจ importante comprendere la regola di rientro da dichiarare Python funzioni e queste regole sono applicabili ad altri elementi di Python cosรฌ come dichiarare condizioni, cicli o variabili.
Python segue uno stile particolare di rientro per definire il codice, poichรฉ Python le funzioni non hanno un inizio o una fine espliciti come le parentesi graffe per indicare l'inizio e la fine della funzione, devono fare affidamento su questo rientro. Qui prendiamo un semplice esempio con il comando โstampaโ. Quando scriviamo la funzione "print" proprio sotto def func 1 (): mostrerร un "errore di rientro: previsto un blocco rientrato".
Ora, quando aggiungi il rientro (spazio) davanti alla funzione "stampa", dovrebbe essere stampato come previsto.
Almeno un rientro รจ sufficiente per far funzionare correttamente il codice. Ma come buona pratica รจ consigliabile lasciare circa 3-4 rientri per chiamare la tua funzione.
ร inoltre necessario che mentre si dichiara il rientro, sia necessario farlo mantieni lo stesso rientro per il resto del codice. Ad esempio, nella schermata seguente quando chiamiamo un'altra istruzione "ancora in func1" e quando non รจ dichiarata proprio sotto la prima istruzione print verrร visualizzato un errore di rientro "unindent non corrisponde a nessun altro livello di rientro."
Ora, quando applichiamo lo stesso rientro per entrambe le istruzioni e le allineiamo sulla stessa riga, si ottiene l'output previsto.
Come la funzione restituisce il valore?
Ritorna il comando Python specifica quale valore restituire al chiamante della funzione. Comprendiamolo con il seguente esempio
Passaggio 1) La funzione non restituisce nulla
Qui โ vediamo quando la funzione non รจ โritornoโ. Ad esempio, vogliamo il quadrato di 4 e dovrebbe dare la risposta "16" quando il codice viene eseguito. Che dร quando usiamo semplicemente il codice "print x*x", ma quando chiami la funzione "print quadrato" restituisce "None" come output. Questo perchรฉ quando chiami la funzione, la ricorsione non avviene e cade dalla fine della funzione. Python restituisce "None" per aver fallito la fine della funzione.
Passaggio 2) Sostituisci il comando di stampa con il comando di assegnazione
Per renderlo piรน chiaro sostituiamo il comando print con il comando di assegnazione. Controlliamo l'output.
Quando esegui il comando "stampa quadrato (4)" in realtร restituisce il valore dell'oggetto poichรฉ non abbiamo alcuna funzione specifica da eseguire qui restituisce "None".
Passaggio 3) Utilizzare la funzione 'return' ed eseguire il codice
Ora, qui vedremo come recuperare l'output utilizzando il comando "return". Quando usi la funzione "return" ed esegui il codice, darร l'output "16".
Passaggio 4) Esegui il comando 'stampa quadrato'
Funzioni in Python sono essi stessi un oggetto e un oggetto ha un certo valore. Vedremo qui come Python tratta un oggetto. Quando esegui il comando "stampa quadrato" restituisce il valore dell'oggetto. Poichรฉ non abbiamo passato alcun argomento, non abbiamo alcuna funzione specifica da eseguire qui restituisce un valore predefinito (0x021B2D30) che รจ la posizione dell'oggetto. In pratica Python programma, probabilmente non avrai mai bisogno di farlo.
Argomenti nelle funzioni
L'argomento รจ un valore che viene passato alla funzione quando viene chiamata.
In altre parole, dal lato chiamante รจ un argomento e dal lato funzione รจ un parametro.
Vediamo come Python Args funziona โ
Passo 1) Gli argomenti sono dichiarati nella definizione della funzione. Mentre chiami la funzione, puoi passare i valori per quegli argomenti come mostrato di seguito
Passo 2) Per dichiarare un valore predefinito di un argomento, assegnargli un valore nella definizione della funzione.
Esempio: x non ha valori predefiniti. Valori predefiniti di y=0. Quando forniamo un solo argomento mentre chiamiamo la funzione moltiplicativa, Python assegna il valore fornito a x mentre mantieniping il valore di y=0. Quindi la moltiplicazione di x*y=0
Passo 3) Questa volta cambieremo il valore in y=2 invece del valore predefinito y=0 e restituirร l'output come (4ร2)=8.
Passo 4) Puoi anche modificare l'ordine in cui possono essere passati gli argomenti PythonQui abbiamo invertito l'ordine dei valori x e y in x=4 e y=2.
Passo 5) ร inoltre possibile passare piรน argomenti come array. Qui nell'esempio chiamiamo piรน argomenti (1,2,3,4,5) chiamando la funzione (*args).
Esempio: Abbiamo dichiarato piรน argomenti come numero (1,2,3,4,5) quando chiamiamo la funzione (*args); stampa l'output come (1,2,3,4,5)
Consigli:
- In Python 2.7 sovraccarico delle funzioni non รจ supportato in Python. L'overloading delle funzioni รจ la possibilitร di creare piรน metodi con lo stesso nome con un'implementazione diversa. Il sovraccarico delle funzioni รจ completamente supportato in Python 3
- C'รจ una certa confusione tra metodi e funzioni. Metodi dentro Python sono associati alle istanze degli oggetti mentre le funzioni no. Quando Python chiama un metodo, associa il primo parametro di quella chiamata al riferimento all'oggetto appropriato. In parole semplici, una funzione autonoma in Python รจ una โfunzioneโ, mentre una funzione che รจ un attributo di una classe o di un'istanza รจ un โmetodoโ.
Ecco il completo Python Codice 3
#define a function
def func1():
print ("I am learning Python function")
print ("still in func1")
func1()
def square(x):
return x*x
print(square(4))
def multiply(x,y=0):
print("value of x=",x)
print("value of y=",y)
return x*y
print(multiply(y=2,x=4))
Ecco il completo Python Codice 2
#define a function
def func1():
print " I am learning Python function"
print " still in func1"
func1()
def square(x):
return x*x
print square(4)
def multiply(x,y=0):
print"value of x=",x
print"value of y=",y
return x*y
print multiply(y=2,x=4)
Sintesi
Funzione dentro Python รจ un pezzo di codice riutilizzabile utilizzato per eseguire una singola azione correlata. In questo articolo vedremo
- Funzione definita dal def dichiarazione
- Il blocco di codice all'interno di ogni funzione inizia con due punti (:) e deve essere rientrato (spazio)
- Eventuali argomenti o parametri di input devono essere inseriti all'interno di queste parentesi, ecc.
- Almeno un trattino dovrebbe essere lasciato prima del codice dopo aver dichiarato la funzione
- Lo stesso stile di rientro dovrebbe essere mantenuto in tutto il codice all'interno della funzione def
- Per le migliori pratiche si considerano tre o quattro trattini meglio prima della dichiarazione
- ร possibile utilizzare il comando "return" per restituire valori alla chiamata di funzione.
- Python stamperร un valore casuale come (0x021B2D30) quando l'argomento non viene fornito alla funzione chiamante. Esempio "funzione di stampa".
- Dal lato chiamante รจ un argomento e dal lato funzione รจ un parametro
- Valore predefinito nell'argomento โ Quando forniamo un solo argomento mentre chiamiamo la funzione di moltiplicazione o qualsiasi altra funzione, Python assegna l'altro argomento per impostazione predefinita
- Python consente anche di invertire l'ordine degli argomenti














