0Pricing
Python Academy · Lezione

Definizione e chiamata delle funzioni

Crei funzioni con def e le chiami passando argomenti.

Definizione e chiamata delle funzioni è una lezione Python Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Python Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Python Academy include 4 lezioni in totale.

Introduzione

Le funzioni sono blocchi di codice riutilizzabili definiti con def. Evitano le ripetizioni e rendono i programmi più facili da testare e manutenere.

Parola chiave def

def greet(name): definisce una funzione. Il corpo è indentato. La si richiama con greet('Alice').
def greet(name):
    print('Hello', name)
greet('Alice')

Argomenti posizionali

Gli argomenti vengono passati in base alla posizione. def add(a, b): return a + b — add(3,4) restituisce 7.
def add(a, b):
    return a + b
print(add(3, 4))

Istruzione return

return invia un valore al chiamante. Una funzione senza return restituisce implicitamente None.
def square(x):
    return x * x
result = square(5)
print(result)

Più valori restituiti

def min_max(lst): return min(lst), max(lst) restituisce una tupla. Per spacchettarla: lo, hi = min_max(lst).
def min_max(lst):
    return min(lst), max(lst)
lo, hi = min_max([3,1,4,1,5])
print(lo, hi)

Docstring

La prima stringa nel corpo di una funzione è la sua docstring: """One-line summary.""". Vi si accede con help() o func.__doc__.
def greet(name):
    """Return a greeting string."""
    return f"Hello {name}"
print(greet.__doc__)

Numero variabile di argomenti

def func(*args) raccoglie gli argomenti posizionali aggiuntivi in una tupla. È utile quando non si sa quanti ce ne saranno.
def total(*nums):
    return sum(nums)
print(total(1,2,3,4))

Le funzioni sono oggetti

Le funzioni sono oggetti di prima classe. Può assegnarle a variabili, passarle come argomenti o memorizzarle in liste.
def double(x): return x * 2
fn = double
print(fn(5))

Chiamare con spacchettamento

args = [1,2]; f(*args) spacchetta una lista in argomenti posizionali. d = {'a':1}; f(**d) spacchetta un dict in argomenti per nome.
def add(a, b): return a + b
args = [3, 4]
print(add(*args))

Funzioni lambda

lambda x: x*2 è una funzione anonima su una riga. La usi per callback brevi; per codice complesso preferisca funzioni con nome.
double = lambda x: x * 2
print(double(5))
print(list(map(lambda x: x**2, [1,2,3])))

Funzioni annidate

Le funzioni possono essere definite all'interno di altre funzioni. La funzione interna ha accesso alle variabili locali della funzione esterna: questa è una closure.
def outer(x):
    def inner(y):
        return x + y
    return inner
add5 = outer(5)
print(add5(3))

Verifica rapida

Che cosa restituisce una funzione se non contiene un'istruzione return esplicita?

Riepilogo

Funzioni: def name(args): body. return restituisce valori. Più valori vengono restituiti tramite una tupla. Usi le lambda per semplici funzioni su una riga. Le funzioni sono oggetti di prima classe.

Continua

Ottimo lavoro! Passi alla lezione successiva per continuare a sviluppare le Sue competenze.

Domande Frequenti

La lezione «Definizione e chiamata delle funzioni» è gratuita?

Sì — il testo completo di «Definizione e chiamata delle funzioni» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Python Academy, passa a CoddyKit PRO. Il corso Python Academy include 4 lezioni in totale.

Cosa imparerò in «Definizione e chiamata delle funzioni»?

Crei funzioni con def e le chiami passando argomenti. Eserciti Python Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Python Academy?

Non è richiesta alcuna esperienza precedente. Python Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Definizione e chiamata delle funzioni»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Python Academy?

Sì. Ogni lezione Python Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Definizione e chiamata delle funzioni
  2. Argomenti predefiniti e con nome
  3. args e kwargs
  4. Valori restituiti e ambito
← Torna a Python Academy