Python booleani
I booleani rappresentano uno dei due valori:
True
o False
.
Valori booleani
Nella programmazione è spesso necessario sapere se un'espressione è
True
o False
.
Puoi valutare qualsiasi espressione in Python e ottenere una delle due risposte
True
o False
.
Quando si confrontano due valori, l'espressione viene valutata e Python restituisce la risposta booleana:
Esempio
print(10 > 9)
print(10 == 9)
print(10 < 9)
Quando esegui una condizione in un'istruzione if, Python restituisce
True
o False
:
Esempio
Stampa un messaggio a seconda che la condizione sia True
o
False
:
a = 200
b = 33
if b > a:
print("b is greater than a")
else:
print("b is not greater than a")
Valutare valori e variabili
La bool()
funzione ti consente di valutare qualsiasi valore e di darti
True
o False
in cambio,
Esempio
Valuta una stringa e un numero:
print(bool("Hello"))
print(bool(15))
Esempio
Valuta due variabili:
x = "Hello"
y = 15
print(bool(x))
print(bool(y))
La maggior parte dei valori sono veri
Quasi ogni valore viene valutato True
se ha una sorta di contenuto.
Qualsiasi stringa è True
, tranne le stringhe vuote.
Qualsiasi numero è True
, tranne
0
.
Qualsiasi elenco, tupla, set e dizionario sono True
, tranne quelli vuoti.
Esempio
Quanto segue restituirà True:
bool("abc")
bool(123)
bool(["apple", "cherry", "banana"])
Alcuni valori sono falsi
In effetti, non ci sono molti valori che restituiscono
False
, tranne valori vuoti, come ()
,
[]
, {}
,
""
, il numero
0
e il valore None
. E ovviamente il valore False
valuta
False
.
Esempio
Quanto segue restituirà False:
bool(False)
bool(None)
bool(0)
bool("")
bool(())
bool([])
bool({})
Un altro valore, o oggetto in questo caso,
restituisce False
, e cioè se hai un oggetto composto da una classe con una __len__
funzione che restituisce
0
o
False
:
Esempio
class myclass():
def __len__(self):
return 0
myobj = myclass()
print(bool(myobj))
Le funzioni possono restituire un booleano
È possibile creare funzioni che restituiscano un valore booleano:
Esempio
Stampa la risposta di una funzione:
def myFunction() :
return True
print(myFunction())
È possibile eseguire codice in base alla risposta booleana di una funzione:
Esempio
Stampa "SI!" se la funzione restituisce True, altrimenti stampa "NO!":
def myFunction() :
return True
if myFunction():
print("YES!")
else:
print("NO!")
Python ha anche molte funzioni integrate che restituiscono un valore booleano, come la
isinstance()
funzione, che può essere utilizzata per determinare se un oggetto è di un certo tipo di dati:
Esempio
Controlla se un oggetto è un numero intero o meno:
x = 200
print(isinstance(x, int))