Credo sia meglio partire con un esempio a caldo: ecco quindi
un programma che calcola il valore assoluto di un numero:
Output di due esecuzioni:
n = input("Number? ")
if n < 0:
print "The absolute value of",n,"is",-n
else:
print "The absolute value of",n,"is",n
Quindi cosa fa Python quando esegue questo programma? Prima
di tutto chiede all'utente un numero grazie alla linea
'n = input ("Number? ")'
dopodiché legge la linea 'if n < 0': se
n è minore di zero Python esegue la
linea 'print "The absolute value of ",
n, " is ", -n' altrimenti, cioè se il
numero è maggiore di zero, esegue la linea
"print "The absolute value of ", n,
"is ", n'.Number? -34
The absolute value of -34 is 34
Number? 1
The absolute value of 1 is 1
Più facilmente Python decide se l'affermazione n < 0 è vera o falsa. Una espressione if è sempre seguita da un blocco di altre espressioni tabulate che vengono eseguite nel caso l'affermazione sia vera. In caso contrario vengono eseguiti i comandi tabulati sotto l'espressione else, ovvero quando l'affermazione if risulta falsa.
Python presenta svariati operatori associabili al confronto di una variabile: eccone una lista completa:
Tabella 5-1.
Operatore | Funzione |
---|---|
< | minore di |
<= | minore o uguale a |
> | maggiore di |
>= | maggiore o uguale a |
== | uguale a |
!= | diverso da |
<> | diverso da |
Output:a = 0 while a < 10: a = a + 1 if a > 5: print a," > ",5 elif a <= 7: print a," <= ",7 else: print "Neither test was true"
Osservate come la linea 'elif a <= 7:' entri in azione solamente quando la prima espressione if risulta falsa. Come potete vedere l'espressione elif permette di fare test multipli all'interno di una singola espressione if.1 <= 7 2 <= 7 3 <= 7 4 <= 7 5 <= 7 6 > 5 7 > 5 8 > 5 9 > 5 10 > 5