Il costrutto condizionale IF
Il comando IF si utilizza per costruire dei costrutti condizionali.
Il costrutto IF è composto da una condizione ed una serie di istruzioni all’interno. Se la condizione produce un valore True, cioè è verificata le istruzioni all’interno del costrutto vengono eseguite, altrimenti no e l’esecuzione passa al comando successivo.
if condizione:
istruzioni
Come puoi vedere dal costrutto precedente, il linguaggio Python usa l’indentazione per comprendere i costrutti (a differenza di altri linguaggi che fanno uso delle parentesi graffe e tonde).
Scrivete nell’editor IDLE i comandi seguenti.
if 7 > 4:
print("7 e' maggiore di 4")
print("comando successivo")
La condizione viene espressa da una espressione in cui è presente un operatore di confronto, che confronta due valori diversi. Se è verificata allora ci aspettiamo che l’istruzione all’interno del costrutto sia eseguita. In questo caso il valore 7 è certamente maggiore di 4 e quindi ci aspettiamo come output la stringa “7 e’ maggiore di 4”.
Eseguiamo il programma e vediamo:
>>>
7 e' maggiore di 4
comando successivo
Tutto come ci aspettavamo.
Vediamo un esempio più concreto in cui sia più utile utilizzare il costrutto IF. Generalmente nelle espressioni di confronto si utilizzano delle variabili, questo perchè non sappiamo a priori (cioè nel momento in cui scriviamo il programma) il valore che assumerà la variabile e quindi abbiamo spesso bisogno del costrutto IF per capire il valore contenuto all’interno.
Scriviamo il codice seguente:
s = input("Inserisci un valore:")
a = int(s)
if a%2 == 0:
print("Hai inserito un numero pari")
if a%2 == 1:
print("Hai inserito un numero dispari")
Eseguitelo. Il programma vi chiederà un valore numerico da inserire. Se avrete inserito un valore numerico allora la conversione lo convertirà in un numero intero, poi il programma ci dirà se il valore che abbiamo inserito è un numero pari od un numero dispari (abbiamo utilizzato l’operatore modulo).
Inserisci un valore:3
Hai inserito un numero dispari
Inserisci un valore:4
Hai inserito un numero pari
⇐ Vai a Lezione 2.1 – Il flusso di controllo
Vai a Lezione 2.3- Il Comando ELSE ⇒
Buongiorno,
Con la versione 3.6 di Python (32 bit) la seguente istruzione dà errore:
>>> if 7 > 4:
print(“7 e’ maggiore di 4”)
print(“comando successivo”)
SyntaxError: invalid syntax
Sapreste aiutarmi?
Grazie infinite, bellissimo corso.. per il momento sto capendo tutto molto velocemente.
Vi auguro una buona giornata
ok ho trovato da solo la soluzione.
Buonasera,
nella modalità interattiva tramite console,
non si possono mettere due istruzioni consecutive separate. Quindi l’istruzione print successiva (indentatura dall’inizio) viene vista come un errore di sintassi.
Basta premere invio dopo il ciclo if, e poi inserire successivamente il comando print:
>>> if …
…
>>> print(…)