Menu
Coddy logo textTech

Co to jest boolean?

W programowaniu boolean to typ danych, który ma dokładnie dwie wartości: prawdę (true) i fałsz (false). Programy dostają wartości logiczne z porównań takich jak age >= 18 i używają ich do decydowania, który kod się wykona, w instrukcjach if i warunkach pętli.

Autor: Kevin Spektor, Współzałożyciel i CTO

Aktualizacja: 24 września 2026

Każda decyzja, którą podejmuje program, sprowadza się do pytania z dwiema możliwymi odpowiedziami: czy hasło jest poprawne, czy koszyk jest pusty, czy minutnik doszedł do zera. Boolean to typ danych, który przechowuje takie odpowiedzi. Nazwa pochodzi od George'a Boole'a, angielskiego matematyka, który opisał algebrę wartości prawdy i fałszu w książkach wydanych w 1847 i 1854 roku.

Skąd biorą się wartości logiczne

Rzadko wpisujesz True albo False bezpośrednio. Większość wartości logicznych powstaje z porównań, które zadają pytanie o dwie wartości i odpowiadają wartością logiczną:

OperatorZnaczeniePrzykładWynik
==równe3 == 3True
!=różne3 != 3False
<, >mniejsze, większe2 < 5True
<=, >=co najwyżej, co najmniej17 >= 18False

Wartość logiczną można zapisać w zmiennej jak każdą inną wartość i łączyć z innymi wartościami logicznymi:

False
<class 'bool'>
False
True

Łączenie wartości logicznych: and, or, not

Trzy operatory logiczne budują większe warunki z mniejszych. and jest prawdziwe tylko wtedy, gdy obie strony są prawdziwe. or jest prawdziwe, gdy prawdziwa jest co najmniej jedna strona. not odwraca pojedynczą wartość.

aba and ba or bnot a
TrueTrueTrueTrueFalse
TrueFalseFalseTrueFalse
FalseTrueFalseTrueTrue
FalseFalseFalseFalseTrue

Python zapisuje te operatory słowami. C, Java i JavaScript używają symboli: && dla and, || dla or, ! dla not. Wszystkie cztery języki przestają obliczać, gdy tylko odpowiedź jest znana, więc w a and b prawa strona nie jest sprawdzana, gdy a jest fałszem. Nazywa się to obliczaniem skróconym (short-circuit evaluation). Przewodnik po operatorach logicznych w Pythonie omawia to szczegółowo.

Jak wartości logiczne sterują programem

Instrukcja if wykonuje swój blok tylko wtedy, gdy warunek jest prawdziwy. Pętla while powtarza swój blok tak długo, jak warunek pozostaje prawdziwy, więc każdą pętlą steruje wartość logiczna sprawdzana na nowo przed każdym przebiegiem. To powtarzanie nazywa się iteracją.

Hot day
Countdown: 3
Countdown: 2
Countdown: 1

Gdy count dochodzi do 0, warunek count > 0 staje się False i pętla się kończy. Gdyby warunek nigdy nie mógł stać się fałszywy, pętla działałaby bez końca.

Wartości logiczne jako 1 i 0

Boolean potrzebuje tylko jednego bitu informacji: 1 dla prawdy, 0 dla fałszu. W praktyce języki zapisują wartość logiczną w co najmniej jednym całym bajcie, bo bajt to najmniejsza jednostka pamięci, która ma własny adres. W C bool z <stdbool.h> zajmuje 1 bajt w gcc i clang. Programy, które potrzebują milionów flag, pakują po 8 z nich w każdy bajt za pomocą operatorów bitowych.

Języki różnią się co do tego, czy wartość logiczna jest też liczbą. W Pythonie bool jest podklasą int, więc True równa się 1, a False równa się 0. To ułatwia liczenie:

True True
2
3 correct

JavaScript też daje 2 dla true + true. C nie miało typu logicznego aż do C99 i nadal traktuje każdą niezerową liczbę jako prawdę. Java jest surowa: if (1) się nie skompiluje, bo warunek w Javie musi być typu boolean.

Wartości truthy i falsy

Python i JavaScript pozwalają użyć dowolnej wartości jako warunku, nie tylko True i False. Wartości, które liczą się jako fałsz, nazywa się falsy; wszystkie pozostałe są truthy.

0 -> False
42 -> True
'' -> False
'False' -> True
[] -> False
[0] -> True
None -> False

W Pythonie zero, puste napisy, puste kolekcje i None są falsy. Napis "False" jest truthy, bo to napis, w którym jest pięć znaków. JavaScript ma własne wartości falsy, w tym false, 0, "", null, undefined i NaN, a pusta tablica [] jest tam truthy. Pełne reguły znajdziesz w artykule truthy i falsy w JavaScripcie.

Częste błędy

Porównywanie z True. if is_ready == True: działa, ale if is_ready: mówi to samo i czyta się krócej. Dla przypadku fałszu napisz if not is_ready:.

Traktowanie tekstu jak wartości logicznej. Dane od użytkownika, z pliku albo z formularza przychodzą jako napis, więc bool("false") daje True. Zamiast tego porównaj tekst: answer == "yes".

Zła wielkość liter. Python pisze True i False; JavaScript, Java i C piszą true i false. Wpisanie true w Pythonie daje NameError: name 'true' is not defined.

Niejasne nazwy. Nazywaj wartość logiczną jak pytanie typu tak lub nie, na przykład is_valid, has_access albo can_edit, żeby warunek czytał się jak zdanie: if user.can_edit:.

Co dalej

Wartości logiczne decydują, ile razy wykona się pętla, więc naturalną kolejną stroną jest czym jest iteracja, a strona co to jest bit pokazuje 0 i 1 ukryte pod każdą prawdą i fałszem. Szczegóły dla Pythona znajdziesz w artykule liczby i wartości logiczne, a warunki przećwiczysz w kursie Python.

Najczęściej zadawane pytania

Jaki jest przykład wartości boolean?
Porównanie 5 > 3 to wyrażenie logiczne, a jego wartość to True. Zmienna taka jak is_logged_in = False przechowuje wartość logiczną. W katalogu bibliotecznym wyszukiwanie cats AND dogs to zapytanie logiczne (Boolean), które korzysta z tej samej logiki.
Czy boolean to 1 czy 0?
Boolean ma dwie wartości, a wiele języków przedstawia je jako 1 dla prawdy i 0 dla fałszu. W Pythonie True == 1 daje True, a w C każda niezerowa liczba liczy się jako prawda. Java trzyma je osobno: boolean w Javie w ogóle nie może być używany jako liczba.
Czy boolean to po prostu tak albo nie?
Tak. Boolean przechowuje dokładnie jedną z dwóch wartości, którą możesz czytać jako tak lub nie, włączone lub wyłączone, prawda lub fałsz. Gdy coś ma więcej niż dwa stany, na przykład zamówienie oczekujące, opłacone albo zwrócone, użyj napisu albo typu wyliczeniowego (enum) zamiast kilku wartości logicznych.
Czym jest boolean w Pythonie?
Typ logiczny w Pythonie to bool, a jego dwie wartości to True i False, pisane wielką literą. bool jest podklasą int, więc w obliczeniach True zachowuje się jak 1. Funkcja bool() zamienia dowolną wartość na True albo False według reguł prawdziwości w Pythonie.
Czym jest wyszukiwanie logiczne (Boolean)?
Wyszukiwanie logiczne łączy słowa kluczowe operatorami AND, OR i NOT, żeby zawęzić albo poszerzyć wyniki. python AND tutorial wymaga obu słów, python OR java przyjmuje którekolwiek, a python NOT snake wyklucza strony z drugim słowem. Katalogi bibliotek i bazy publikacji naukowych obsługują je bezpośrednio, a Google przyjmuje OR oraz znak minus zamiast NOT.
Ilustracja języków programowania w Coddy

Ucz się programowania z Coddy

ZACZNIJ