Python: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Gianluigi (discussione | contributi)
mNessun oggetto della modifica
Gianluigi (discussione | contributi)
mNessun oggetto della modifica
Riga 38:
== Sintassi ==
 
Python è stato progettato in modo da essere altamente leggibile. Visivamente si presenta in modo molto semplice e ha pochi costrutti sintattici rispetto a molti altri linguaggi strutturati come [[C]], [[Perl]] o [[Pascal (linguaggio)|Pascal]].
 
Per esempio, Python ha solo due forme di ciclo -- <TT>for</TT>, che cicla sugli elementi di una lista o su di un iteratore (come il <TT>foreach</TT> del Perl); e <TT>while</TT>, che cicla fin tanto che l'espressione booleana indicata risulta vera. In sostanza manca dei cicli in stile C <TT>for</TT>, <TT>do</TT>...<TT>while</TT>, oppure di un <TT>until</TT> in stile Perl, ma tutti questi naturalmente possono essere espressi con dei semplici equivalenti. Allo stesso modo ha solamente il costrutto <TT>if</TT>...<TT>elif</TT>...<TT>else</TT> per le scelte condizionate -- niente <TT>switch</TT> oppure <TT>goto</TT>.
Riga 46:
Una cosa inusuale del Python è il metodo che usa per delimitare i bocchi di programma, cosa che lo rende unico fra tutti i linguaggi più diffusi.
 
Nei linguaggi derivati dall'[[Algol]] -- come ad esempio [[Pascal (linguaggio)|Pascal]], [[C]] e [[Perl]] -- i blocchi di codice sono indicati con le parentesi oppure con parole chiave. (Il [[C]] ed il [[Perl]] usano <TT>{ }</TT>; il [[Pascal]] usa <TT>begin</TT> ed <TT>end</TT>.) In questi linguaggi è solo una convenzione degli sviluppatori il fatto di indentare il codice interno ad un blocco, per metterlo in evidenza rispetto al codice circostante.
 
Python, invece, prende a prestito una caratteristica dal meno noto linguaggio di programmazione [[Occam]] -- invece di usare parentesi o parole chiavi, usa l'indentazione stessa per indicare i blocchi nidificati. Di seguito un esempio per chiarire questo. La versione [[C]] e Python di funzioni che fanno la stessa cosa -- calcolare il fattoriale di un intero: