Come programmatore, ti ritroverai spesso a eseguire ripetutamente un'azione o un'attività. Questo può essere noioso e richiedere molto tempo, soprattutto quando si lavora con una base di codice ampia o complessa. Automatizzarli con le funzioni è un approccio più efficace per eseguire tali attività. Le funzioni ti consentono di scrivere la logica del codice una volta e di usarla ovunque nel tuo programma.

Cos'è una funzione Python?

In Python, una funzione è un blocco di codice utilizzato per eseguire un'attività specifica. Devi solo scrivere una funzione una volta, ma puoi usarla più volte nel tuo codice. Una funzione può accettare argomenti come input e restituire valori di output. Questo semplice programma mostra una funzione che calcola la somma di tre numeri:

# Funzione Python per calcolare la somma di tre numeri

defcalcola_somma(a, b, c):
ritorno a+b+c

stampa (calcola_somma(1,2,3)) # restituisce 6
stampa (calcola_somma(1000, 300,44)) # restituisce 1344
stampa (calcola_somma(12, 4,78)) # restituisce 94

instagram viewer

Nel programma precedente, la funzione restituisce la somma di tre argomenti. Quando la funzione viene chiamata più volte, restituisce un output diverso per ogni caso. Un'applicazione utile per questa funzione sarà un'app calcolatrice.

Definizione di una funzione in Python

Python ha molte funzioni integrate disponibile per gli sviluppatori da utilizzare. Tuttavia, queste funzioni integrate non sono sempre sufficienti per soddisfare le esigenze della maggior parte dei progetti. Per soddisfare le richieste personalizzate, devi definire le tue funzioni personalizzate. La definizione di funzioni personalizzate è una pratica comune nella programmazione.

In Python, puoi definire una funzione personalizzata usando il def parola chiave seguita dal nome della funzione con parentesi davanti. Ecco un esempio:

defnome_funzione()

Dovresti prendere nota di queste regole quando assegni un nome di funzione in Python:

  • I nomi delle funzioni devono essere in minuscolo.
  • I nomi delle funzioni devono essere descrittivi.
  • Utilizzare i caratteri di sottolineatura per separare le parole nel nome di una funzione.

Dopo aver definito la funzione, è necessario scrivere la logica per eseguire l'attività desiderata. Ad esempio, questa funzione calcola l'area di un triangolo:

# Funzione Python per calcolare l'area di un triangolo

defcalcola_triangolo_area(base, altezza):
area = (base * altezza)/2
ritorno la zona

stampa (calcola_area_triangolo(12, 3))

La funzione sopra definisce due parametri: base E altezza, divide il loro prodotto per due e restituisce il risultato come output. Puoi scrivere qualsiasi logica desideri che la tua funzione esegua.

Comprensione degli argomenti delle funzioni

Negli esempi precedenti, le funzioni hanno preso argomenti per eseguire azioni. Gli argomenti in questi esempi sono noti come argomenti richiesti o posizionali. In Python, i tuoi argomenti possono essere uno dei seguenti:

  • Argomenti posizionali
  • Argomenti delle parole chiave

Argomenti posizionali

Gli argomenti posizionali devono essere passati nell'ordine di definizione corretto. Ad esempio, se definisci una funzione con parametri a, b, E C, devi passare i valori per questi parametri di conseguenza quando li chiami. Esaminiamo un esempio precedente:

# Funzione Python per calcolare la somma di tre numeri

defcalcola_somma(a, b, c):
ritorno a+b+c

stampa (calcola_somma(1,2,3)) # restituisce 6
stampa (calcola_somma(1000, 300,44)) # restituisce 1344
stampa (calcola_somma(12, 4,78)) # restituisce 94

Nel programma di cui sopra, il calcola_somma() La funzione accetta tre argomenti ogni volta che la chiamiamo. Ogni argomento rappresenta un parametro corrispondente. Nella prima chiamata di funzione, i numeri 1, 2, E 3 rappresentare un, b, E C di conseguenza.

Un parametro è dichiarato nella definizione di una funzione, mentre un argomento è il valore passato quando si chiama la funzione. Questo valore è una rappresentazione del parametro corrispondente.

Le argomentazioni posizionali sono obbligatorie. Se non li aggiungi, otterrai un file TipoErrore. L'esempio seguente lo dimostra:

defcalcola_somma(a, b, c):
ritorno a+b+c

stampa (calcola_somma(1,2)) # solleva TypeError

Quando esegui il programma di cui sopra sul tuo computer, riceverai un errore simile a quello nell'immagine qui sotto:

Argomenti delle parole chiave

Gli argomenti delle parole chiave non devono necessariamente essere passati ogni volta che chiami una funzione. Sono argomenti facoltativi e non è necessario che seguano un ordine specifico. Python ci permette di usare *args e **kwargs per specificare argomenti di parole chiave.

A parte l'utilizzo *arg E **kwargs, è anche possibile specificare valori predefiniti per i propri argomenti. In questo modo non verrà visualizzato un errore se dimentichi di aggiungere un valore quando chiami la funzione. Questo esempio fornisce un'illustrazione:

defcalcola_somma(a, b,c=3):
ritorno a+b+c

stampa (calcola_somma(1,2)) # restituisce 6

Nel programma sopra, quando calcola_somma() è chiamato, non c'è argomento per C; questo non influirà sul programma perché C ha già un valore predefinito. Puoi specificare i valori predefiniti per tutti gli argomenti che desideri, ma assicurati di farlo con saggezza.

Usa le funzioni per organizzare il tuo codice

Le funzioni sono utili per organizzare il codice, rendendolo più leggibile ed efficiente. Con le funzioni, puoi suddividere il tuo codice in blocchi più piccoli e riutilizzabili che sono più facili da capire e gestire. Inoltre, se è necessario apportare modifiche al codice, è necessario modificare solo la funzione necessaria anziché l'intera base di codice.