Python / Үнэн/Худал (Boolean)

Үнэн/Худал (Boolean)

bool бол Python-ийн хамгийн энгийн өгөгдлийн төрөл — зөвхөн хоёр л утга авдаг: True (үнэн) эсвэл False (худал). Нөхцөл шалгах, давталт удирдах, шийдвэр гаргах бүхий л газар boolean ашигладаг. Энгийн мэт харагдах боловч программчлалын суурь ойлголтуудын нэг юм.

True ба False

python
суралцаж_байна = True
шалгалт_дууссан = False

print(суралцаж_байна)     # True
print(шалгалт_дууссан)    # False
print(type(True))          # <class 'bool'>

Boolean утга нь харьцуулах үйлдлүүдийн үр дүнд автоматаар гардаг:

python
нас = 20

print(нас >= 18)    # True  — насанд хүрсэн
print(нас == 25)    # False — 20 нь 25 биш
print(нас != 0)     # True  — тэг биш
print(нас < 18)     # False — 20 нь 18-аас их

Логик операторууд

Хэд хэдэн нөхцөлийг нэгтгэхэд and, or, not операторуудыг ашигладаг:

and — хоёулаа үнэн байх ёстой

python
нас = 22
орлого = 800_000

# Зээл авах нөхцөл: 18+ настай БА орлого 500,000₮-с дээш
зээл_авч_болох = нас >= 18 and орлого >= 500_000
print(зээл_авч_болох)    # True

# Нэг нь худал байвал бүхэлдээ False
print(True and False)    # False
print(False and False)   # False
print(True and True)     # True

or — дор хаяж нэг нь үнэн байвал хангалттай

python
амралт = False
чөлөөтэй = True

# Аль нэг нь True байвал хангалттай
явж_болно = амралт or чөлөөтэй
print(явж_болно)         # True

print(False or False)    # False
print(True or False)     # True
print(True or True)      # True

not — утгыг урвуулах

python
нэвтэрсэн = False
print(not нэвтэрсэн)    # True

гишүүн = True
print(not гишүүн)        # False

Truthy ба Falsy утгууд

Python-д boolean биш утгуудыг ч нөхцөл болгон ашиглаж болно. Дараах утгууд нь False гэж тооцогддог (falsy):

| Утга | Тайлбар | | --------- | --------------- | | False | Boolean худал | | 0 | Тэг тоо | | 0.0 | Тэг float | | "" | Хоосон string | | [] | Хоосон жагсаалт | | {} | Хоосон dict | | None | Хоосон утга |

Дээрхээс бусад бүх утга truthyTrue гэж тооцогдоно:

python
# Falsy жишээнүүд
print(bool(0))      # False
print(bool(""))     # False
print(bool([]))     # False
print(bool(None))   # False

# Truthy жишээнүүд
print(bool(1))          # True
print(bool(-99))        # True
print(bool("Python"))   # True
print(bool([0]))        # True — хоосон биш жагсаалт

Практик хэрэглээ:

python
нэр = ""
if нэр:
    print(f"Сайн уу, {нэр}!")
else:
    print("Нэрээ оруулна уу")   # Энэ хэсэг ажиллана

Boolean ба тоон утга

Python-д True нь 1, False нь 0-тэй тэнцүү тул тоон үйлдэл хийж болно:

python
print(True + True)     # 2
print(True + False)    # 1
print(False + False)   # 0

# Жагсаалтад хэдэн True байгааг тоолох
хариулт = [True, False, True, True, False]
print(sum(хариулт))    # 3 — гурван True

Бодит жишээ — нэвтрэх шалгалт

python
зөв_нэвтрэх_нэр = "admin"
зөв_нууц_үг = "Python2024"

нэвтрэх_нэр = "admin"
нууц_үг = "Python2024"

нэр_зөв = нэвтрэх_нэр == зөв_нэвтрэх_нэр
нууц_зөв = нууц_үг == зөв_нууц_үг

нэвтэрч_болно = нэр_зөв and нууц_зөв

print(f"Нэвтрэх нэр: {нэр_зөв}")      # True
print(f"Нууц үг: {нууц_зөв}")          # True
print(f"Нэвтрэх боломжтой: {нэвтэрч_болно}")  # True

Дараагийн хичээлд:

Boolean-ийг гүнзгий ойлголлоо! Дараа нь if, elif, else нөхцөл оператороор програмдаа шийдвэр гаргах чадвар нэмнэ — boolean нь яг тэнд хэрэг болно.