5.1 Typ bool
W Pythonie jest specjalny logiczny typ danych, dzięki któremu można sprawdzać prawdziwość warunków i wyrażeń. Jest oznaczany słowem kluczowym bool (chociaż właściwie nazywa się Boolean) i używany do reprezentacji jednej z dwóch wartości: True (Prawda) lub False (Fałsz).
Ten typ danych jest niezwykle przydatny w programowaniu do zarządzania kolejnością wykonywania programu za pomocą operatorów warunkowych, takich jak if, else i elif, a także do zarządzania pętlami i innymi strukturami sterującymi.
Ważna uwaga
Logiczny typ danych w Pythonie jest reprezentowany przez dwie stałe obiekty: True i False. Jednak trzeba zauważyć, że Python traktuje True jako wartość liczbową 1 i False jako 0. To pozwala na użycie ich w operacjach arytmetycznych i czyni typ bool podklasą typu int.
Praktyczne zastosowanie
Pomimo że istnieją tylko dwie możliwe wartości, typ bool jest silny nie swoimi wartościami, a zestawem operacji logicznych, które można na nich przeprowadzać. O nich — poniżej.
5.2 Operatory logiczne
Operacje logiczne w Pythonie odgrywają ważną rolę w zarządzaniu kolejnością wykonywania programu i podejmowaniu decyzji. Główne operacje logiczne obejmują and, or i not. Zrozumienie ich zastosowania może znacznie poprawić efektywność Twojego kodu.
Logiczne I (AND)
Operator and zwraca True tylko jeśli oba jego argumenty są prawdziwe (True). Ten operator jest często używany do sprawdzania prawdziwości kilku warunków jednocześnie.
a = True
b = False
print(a and b) # Wyświetli: False
Logiczne LUB (OR)
Operator or zwraca True, jeśli przynajmniej jeden z jego argumentów jest prawdziwy. To jest użyteczne dla warunków, gdzie wykonanie kodu powinno kontynuować się przy spełnieniu przynajmniej jednego z kilku możliwych warunków.
a = True
b = False
print(a or b) # Wyświetli: True
Logiczne NIE (NOT)
Operator not odwraca wartość logiczną swojego argumentu. Jeśli argument jest True, wynik będzie False i odwrotnie. To może być przydatne do tworzenia warunków, które wymagają zaprzeczenia.
a = True
print(not a) # Wyświetli: False
Zaawansowane użycie
Operatory logiczne są często używane w kombinacji do tworzenia skomplikowanych wyrażeń warunkowych, które pomagają kontrolować bardziej złożone przebiegi wykonania.
a = 5
b = 10
c = 20
result = a < b and b < c # Sprawdza, czy a jest mniejsze od b i b jest mniejsze od c
print(result) # Wyświetli: True
Operacje logiczne w Pythonie zapewniają potężne narzędzie do zarządzania zachowaniem programu na podstawie różnych warunków. Nie tylko upraszczają pisanie kodu, ale też czynią go bardziej czytelnym i utrzymywalnym.
5.3 Praktyczne przykłady
Python pozwala konwertować inne typy danych do typu logicznego za pomocą funkcji bool(). Z domyślnie, każda niezerowa lub niepusta wartość zostanie przekształcona na True, a zerowe lub puste wartości — na False.
Przykłady konwersji typów:
print(bool(0)) # Wyświetli False
print(bool(42)) # Wyświetli True
print(bool("")) # Wyświetli False
print(bool("Text")) # Wyświetli True
Użycie zmiennych logicznych w warunkach:
a = 5
b = 10
c = 20
is_a_min = a < b and a < c # Sprawdza, czy a jest mniejsze od b i a jest mniejsze od c
print(is_a_min) # Wyświetli: True
Zmiennych logicznych nie trzeba porównywać z True lub False, bo wynik porównania to i tak będzie True lub False. Przykład:
| Kod startowy | Kod startowy wyodrębniony do osobnej zmiennej | Usunięto == True |
|---|---|---|
|
|
|
Wynik każdego porównania ma wartość True lub False, dlatego można go przypisać do zmiennej – jak to było zrobione w powyższym przykładzie. Ale w warunku if, lub pętli while, nie trzeba porównywać zmiennej logicznej z True. Zmienna logiczna już zawiera poprawną wartość. Po prostu nadaj jej właściwą nazwę, a wszystko będzie jasne.
Innymi słowy, zamiast kodu „if a == True:” wystarczy napisać „if a:”. A zamiast kodu „if a == False:” pisać „if not a:”.
GO TO FULL VERSION