Argomenti trattati:
- Funzioni
- Passaggio oggetti mutabili ed immutabili.
- Visibilità e ricerca dei simboli.
- global e nonlocal.
- Funzioni annidate.
- Parametri opzionali.
- Passaggio posizionale o per chiave, dei parametri.
Materiale didattico:
Consigli:
- Le funzioni annidate sono utili per implementare piccole sotto-funzionalità, facenti sempre parte della funzione più esterna(‘principale’).
- È sconsigliato l’utilizzo di global e nonlocal, salvo in casi come quello citato al punto precedente, o per stretta necessità; l’utilizzo di tali costrutti crea forte accoppiamento(legame stretto) tra il codice di una funzione, e quello definito esternamente, andando contro i principi di modularità, che una funzione dovrebbe rispettare, e rendendone, il codice, poco riutilizzabile (Riferimenti utili).
- Utilizzare i parametri opzionali solo se la logica della funzione prevede che quest’ultima possa operare, sia su valori predefiniti, che personalizzati.
- Si ricorda che, degli oggetti mutabili, passati come parametro ad una funzione, l’interprete passerà solo il riferimento, e non la copia; è opportuno segnalare, nella DocString della funzione, eventuali modifiche apportate, da quest’ultima, agli oggetti in input.
Esercizi per casa:
- Completare gli esercizi assegnati nelle precedenti lezioni.