CodeGym /Kursy /Python SELF PL /Praca z typem logicznym

Praca z typem logicznym

Python SELF PL
Poziom 5 , Lekcja 5
Dostępny

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

if a < b:
    print("a jest najmniejsze")

                    is_a_less = a < b
                    if is_a_less == True:
                        print("a jest najmniejsze")              
                

                    is_a_less = a < b
                    if is_a_less:
                        print("a jest najmniejsze")               
                

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:”.

Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION