Usare le funzioni python come oggetti

Nel linguaggio Python le funzioni sono degli oggetti a tutti gli effetti. E' una caratteristica particolarmente utile nella programmazione informatica.

A cosa serve?

Ad esempio, posso assegnare una funzione a una variabile.

var=funzione()

Posso anche usare la funzione come parametro di un'altra funzione.

funzione1(funzione2)

    Esempi pratici

    Esempio 1

    Sviluppo una funzione che stampa a video qualsiasi stringa passata come argomento.

    1. def stampa(x):
    2. print(x)
    3. test=stampa
    4. test("prova")

    Poi assegno alla variabile test la funzione prova.

    Nell'ultima riga uso la variabile test come fosse una funzione.

    L'output è il seguente:

    prova

    L'interprete python ha eseguito la funzione stampa anche se ho usato la variabile test.

    Esempio 2

    In quest'altro script definisco due funzioni.

    1. def stampa(x):
    2. print(x)
    3. def esegui(funz,argom):
    4. funz(argom)
    5. esegui(stampa,'prova')

    La prima funzione stampa a video qualsiasi stringa passata come argomento.

    La seconda funzione usa il primo argomento per chiamare una funzione usando, il secondo argomento come parametro della seconda chiamata.

    la funzione invoca un'altra funzione

    Nella quinta riga invoco la funzione esegui passandogli come primo argomento il nome della funzione 'stampa' e come secondo argomento la stringa 'prova'

    L'output del programma è il seguente:

    prova

    L'interprete python ha eseguito la funzione esegui che, a sua volta, ha chiamato la funzione stampa.

    E così via

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    Le funzioni in python