Concetti Chiave
- La precedenza degli operatori in Python segue un ordine specifico che inizia con le parentesi, seguite dagli esponenti e dagli operatori unari.
- I comandi condizionali includono if, elif ed else, permettendo di gestire il flusso del programma in base a condizioni specifiche.
- La funzione sum() esegue una scansione lineare degli elementi, accumulando un valore iniziale durante il processo.
- Gli assegnamenti aumentati come += e -= modificano il valore della variabile in modo efficiente, valutando prima la parte sinistra.
- I commenti possono essere scritti in modo multilinea con ''' o in linea con #, fornendo chiarezza e spiegazioni nel codice.
Operatori e precedenze
Precedenze
Da sinistra a destra
Parentesi
**
+ - unari
* // %
+ -
Operatori di confronto
Minore:
Minore o uguale:
Maggiore: >
Maggiore o uguale: >=
Uguale: ==
Diverso: !=
Funzione sum()
Sum(
Assegnamenti aumentati
X
+= -= *= /= //= %= **=
1. X valutato solo una volta
2. Operazione in place se possibile
3. Prima si valuta la parte sinistra, poi quella destra, infine si modifica il legame
Se ci sono effetti collaterali, avvengono una sola volta e questi avvengono prima della valutazione della parte destra
Comandi condizionali e cicli
Comando condizionale
If
Elif
Else:
For
For
Scansione lineare
Accum = valore iniziale
For e in sequenza:
comandi
accum =
comandi
Accum ha il valore definitivo
Ricerca lineare
While
Assegnamento
Assegnamento associa un valore ad un nome (sequenza di lettere o cifre o _ (non -) che inizia con lettera
Assegnamento generalizzato:
Funzione print()
Print(
Print(
Può avere parametri opzionali per keyword:
- sep: separatore (default: ‘ ‘)
- end: terminazione dopo print(default: ‘\n’)
Commenti
Tra ‘’’ e ‘’’: subito sotto la riga di def della funzione, che spiega cosa fa la funzione, commento su più righe
#: accanto a istruzioni complesse per spiegarle, commento breve
Input
Conversione input:
Funzione type()
Type(
Restituisce il tipo (la classe) dell'oggetto
Operatori e conversioni
Operatore in
Espressione booleana che ha valore true sse
True anche se
Non verifica presenza di sottotuple
Conversione
Debug
Sintassi: messaggi di errore
Run-time: gestione errori run-time
Semantica: input casi limite
Domande da interrogazione
- Qual è l'importanza delle precedenze degli operatori nella programmazione?
- Come funziona la funzione sum() e quale è il suo comportamento?
- Quali sono le caratteristiche principali degli assegnamenti aumentati?
Le precedenze degli operatori determinano l'ordine in cui le operazioni vengono eseguite, influenzando il risultato finale delle espressioni. Ad esempio, le parentesi hanno la precedenza più alta, seguite da operatori come **, *, e /, fino ad arrivare a + e -.
La funzione sum() è equivalente a una scansione lineare con accumulo, dove il valore finale è il risultato dell'accumulo di tutti gli elementi. Questo processo avviene in modo tale che l'operazione viene eseguita solo una volta per ogni elemento.
Gli assegnamenti aumentati, come += e -=, valutano la variabile solo una volta e modificano il legame in modo in-place, garantendo che eventuali effetti collaterali si verifichino una sola volta prima della valutazione della parte destra.