Үнэн/Худал (Boolean)
bool бол Python-ийн хамгийн энгийн өгөгдлийн төрөл — зөвхөн хоёр л утга авдаг: True (үнэн) эсвэл False (худал). Нөхцөл шалгах, давталт удирдах, шийдвэр гаргах бүхий л газар boolean ашигладаг. Энгийн мэт харагдах боловч программчлалын суурь ойлголтуудын нэг юм.
True ба False
суралцаж_байна = True
шалгалт_дууссан = False
print(суралцаж_байна) # True
print(шалгалт_дууссан) # False
print(type(True)) # <class 'bool'>
Boolean утга нь харьцуулах үйлдлүүдийн үр дүнд автоматаар гардаг:
нас = 20
print(нас >= 18) # True — насанд хүрсэн
print(нас == 25) # False — 20 нь 25 биш
print(нас != 0) # True — тэг биш
print(нас < 18) # False — 20 нь 18-аас их
Логик операторууд
Хэд хэдэн нөхцөлийг нэгтгэхэд and, or, not операторуудыг ашигладаг:
and — хоёулаа үнэн байх ёстой
нас = 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 — дор хаяж нэг нь үнэн байвал хангалттай
амралт = False
чөлөөтэй = True
# Аль нэг нь True байвал хангалттай
явж_болно = амралт or чөлөөтэй
print(явж_болно) # True
print(False or False) # False
print(True or False) # True
print(True or True) # True
not — утгыг урвуулах
нэвтэрсэн = False
print(not нэвтэрсэн) # True
гишүүн = True
print(not гишүүн) # False
Truthy ба Falsy утгууд
Python-д boolean биш утгуудыг ч нөхцөл болгон ашиглаж болно. Дараах утгууд нь False гэж тооцогддог (falsy):
| Утга | Тайлбар |
| --------- | --------------- |
| False | Boolean худал |
| 0 | Тэг тоо |
| 0.0 | Тэг float |
| "" | Хоосон string |
| [] | Хоосон жагсаалт |
| {} | Хоосон dict |
| None | Хоосон утга |
Дээрхээс бусад бүх утга truthy — True гэж тооцогдоно:
# 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 — хоосон биш жагсаалт
Практик хэрэглээ:
нэр = ""
if нэр:
print(f"Сайн уу, {нэр}!")
else:
print("Нэрээ оруулна уу") # Энэ хэсэг ажиллана
Boolean ба тоон утга
Python-д True нь 1, False нь 0-тэй тэнцүү тул тоон үйлдэл хийж болно:
print(True + True) # 2
print(True + False) # 1
print(False + False) # 0
# Жагсаалтад хэдэн True байгааг тоолох
хариулт = [True, False, True, True, False]
print(sum(хариулт)) # 3 — гурван True
Бодит жишээ — нэвтрэх шалгалт
зөв_нэвтрэх_нэр = "admin"
зөв_нууц_үг = "Python2024"
нэвтрэх_нэр = "admin"
нууц_үг = "Python2024"
нэр_зөв = нэвтрэх_нэр == зөв_нэвтрэх_нэр
нууц_зөв = нууц_үг == зөв_нууц_үг
нэвтэрч_болно = нэр_зөв and нууц_зөв
print(f"Нэвтрэх нэр: {нэр_зөв}") # True
print(f"Нууц үг: {нууц_зөв}") # True
print(f"Нэвтрэх боломжтой: {нэвтэрч_болно}") # True
Дараагийн хичээлд:
Boolean-ийг гүнзгий ойлголлоо! Дараа нь if, elif, else нөхцөл оператороор програмдаа шийдвэр гаргах чадвар нэмнэ — boolean нь яг тэнд хэрэг болно.