I booleani in Python: logica e controllo di flusso
In Python, come in molti altri linguaggi di programmazione, i booleani rappresentano uno dei tipi di dati fondamentali. Essi sono utilizzati per rappresentare la verità o la falsità di un'espressione e sono quindi centrali nella logica e nel controllo del flusso di un programma.
Questa pagina esplorerà in dettaglio i booleani in Python, discutendo come vengono utilizzati nelle espressioni condizionali, nei cicli, e come interagiscono con altri tipi di dati.
I booleani possono assumere solo due valori: True o False. In Python, il tipo è denotato come bool. Questi valori sono particolarmente utili quando si lavora con espressioni condizionali, permettendo al programma di prendere decisioni e controllare il flusso di esecuzione.
L'algebra booleana in Python
Le operazioni fondamentali dell'algebra booleana sono l'AND, l'OR e il NOT. In Python, queste operazioni sono rappresentate rispettivamente dagli operatori and, or, e not.
L'operatore and restituisce True se entrambi gli operandi sono True. Altrimenti, restituisce False.
print(True and True) # Output: True
print(True and False) # Output: False
L'operatore or restituisce True se almeno uno degli operandi è True. Restituisce False solo se entrambi gli operandi sono False.
print(True or False) # Output: True
print(False or False) # Output: False
L'operatore not inverte il valore booleano dell'operando. Se l'operando è True, restituisce False, e viceversa.
print(not True) # Output: False
print(not False) # Output: True
I valori Truthy e Falsy in Python
In Python, quasi ogni oggetto ha un valore booleano intrinseco. Un oggetto che è considerato True in contesti booleani è detto "truthy", mentre uno che è considerato False è detto "falsy".
Ecco alcuni esempi di oggetti falsy:
None
False
Zero di qualsiasi tipo numerico, per esempio, 0, 0.0, 0j
Qualsiasi sequenza vuota, per esempio, '', (), []
Qualsiasi mappa vuota, per esempio, {}
Quasi tutto il resto è considerato truthy.
Espressioni condizionali
Le espressioni condizionali, come if, elif, e else, sono parte integrante del controllo del flusso in Python. Queste strutture utilizzano valori booleani per decidere quale blocco di codice eseguire.
a = 10
b = 20
if b > a:
print("b è maggiore di a")
elif a == b:
print("a e b sono uguali")
else:
print("a è maggiore di b")
In particolare, gli operatori di confronto sono usati per confrontare due valori e restituiscono un valore booleano, True o False, a seconda del risultato del confronto. Esempi includono ==, !=, <, >, <=, >=.