INDENTAZIONE
Innanzitutto l’indentazione è una di quelle cose che distingue Python da ogni altro linguaggio poiché non è solo una “convenzione” per rendere leggibile il codice ma una vera e propria regola da seguire senza la quale l’interprete segnalerà inesorabilmente errore.
L’indentazione apre e chiude un blocco di codice: quando l’indentazione cresce di un livello si apre il nuovo blocco, quando l’indentazione diminuisce si chiude il blocco.
def unCodiceMaleIndentato :
"Questo è il livello 1"
"Questo è il livello2"
"Questo è di nuovo il livello1"
L’esempio qui sopra riportato rappresenta 2 blocchi di codice: il blocco 1 che rappresenta il corpo di def (vedremo subito dopo cosa significa) che a sua volta contiene il blocco 2.
Ma quando serve aprire un blocco di codice? E’ semplice. Come regola considerate che si usa un blocco di codice ogni qual volta ci troviamo difronte a parole chiave e comandi che devono eseguire del codice e quindi: strutture decisionali (if), strutture iterative (while,for) e definizione di funzioni o classi (def). Ma vi sarà più chiaro con i futuri esempi.
DEF
La parola chiave def serve a def-inire una funzione con la seguente sintassi:
def nomeFunzione(parametro1,parametro2,...) :
#Corpo della funzione.
Questo comando definirà quindi una funzione di nome nomeFunzione che prenderà come parametri parametro1, parametro2, etc… ed eseguirà le istruzioni scritte nel blocco “Corpo della funzione.”.
Se la funzione deve restituire un valore di ritorno usiamo la parola chiave return come nel seguente esempio:
def areaTriangolo(base,altezza) :
return (base * altezza)/2
In questo esempio la funzione areaTriangolo prende come parametri base e lato di un triangolo e restituirà la sua area. Per chiamare la funzione sarà sufficente scrivere ad esempio areaTriangolo(4,5) all’interno del codice.
Le caratteristiche in cui le funzioni python differiscono da altri linguaggi sono in particolare:
- Nelle funzioni non va definito il tipo del valore di ritorno. Quindi possono ritornare anche tipi diversi in base a seconda dei casi, anche se sconsiglio questa procedura.
- Le funzioni possono ritornare anche 2 o più valori, basta separarli con una virgola dopo il return!
- Le funzioni possono ritornare anche funzioni. Ma questo è un aspetto più “avanzato”!
ESERCIZIO: Scrivere una funzione che calcoli il volume di una piramide e richiamarla per stampare a schermo un risultato. Per informazione il volume di una piramide si calcola con (1/3)*AreaBase*Altezza.
>>> def volumePiramide(AreaBase,Altezza) :
return(AreaBase * Altezza)*1/3
>>> volumePiramide(200,150)
10000
…dovrebbe essere cosi,anke perche’ e’ da poco che ho iniziato a programmare con Python…anzi…accetto consigli e seguo le lezioni che gentilmente offre thek3nger . ciauz e buona programmazione ^^