25-dars. Python tilidagi mantiqiy (mantiqiy) ifodalar va operatorlar

Bugungi darsimizda mantiqiy operatorlar va ifodalar nima ekanligini bilib olamiz. Matematika va dasturlashda bunday ifodalar va operatorlar mantiqiy yoki mantiqiy (inglizcha Boolean – mantiqiy) deb ham ataladi.


Mantiqiy iboralar va operatorlardan foydalanmasdan, har qanday dasturlash tilida, jumladan Python 2.7 da biroz murakkab dastur tuzish mumkin emas. 
Bir qarashda barcha mantiqiy iboralarni tushunish qiyin, lekin 2-3 kun davomida ularni yodlash va amalda qo‘llash bo‘yicha mashq qilgandan so‘ng, kelajakda ulardan ancha xotirjam foydalana olasiz.

Shunday qilib, ibora to’g’ri yoki yo’qligini ayting:

5 > 2


Ha, shunday deysiz. 5 raqami 2 raqamidan kattaroqdir.


Demak, belgi >mantiqiy (mantiqiy) operatordir.

Barcha mantiqiy ifodalar ikkita qiymatga ega – True yoki False. Ammo ko’pincha dasturchilar ingliz tilida gaplashishadi: True yoki False .

Shunday qilib, agar biz ushbu ifodani PowerShell dasturida yozsak, Python bizga quyidagi qiymatni berishi kerak: True

Keling, tekshiramiz.

Keling, PowerShell dasturini ochamiz, unga python buyrug’ini kiritamiz va keyin ifodamizni kiritamiz:

5>2


Tasvirga o’xshash bo’lishi kerak.

Davom etishga ruxsat.

Va agar biz 5 < 2 ni kiritsak – keyin nima bo’ladi? Nazariy jihatdan, matematikani bilgan holda, bu ifoda False qiymatiga ega bo’lishi kerak ! 
Ochiq PowerShell oynasida biz o’z ifodamizni yozamiz: 5 < 2 
Va Python bizga aytadi: False

Siz birinchi holatda raqamlar va kattalik belgisi o’rtasida bo’sh joy qoldirmaganimni, lekin ikkinchi holatda qoldirganimni payqadingiz. Python menga hech qanday xatolik bermadi, lekin alohida belgilar orasida bo’sh joy mavjud bo’lganda kodni o’qish osonroq.

Davom etishga ruxsat.

Biz mantiqiy ifoda va operatorning eng oddiy versiyasini ko’rib chiqdik. Endi men sizga Python dasturlashda foydalanadigan asosiy mantiqiy operatorlar (mantiqiy operatorlar) va ularning ma’nolarini beraman. Ularni eslab qoling, ularni qog’ozga yozing va 2 kun davomida takrorlang.

Operatornot

False emas – Haqiqiy qiymat 
True emas – Noto’g’ri qiymat

Ya’ni, not operatori teskari ma’noni beradi: “bu yolg’on emas – bu haqiqat”.

Endi bu ifodalarni PowerShell oynasiga yozamiz va natijani ko’ramiz.

Rasmga qarang, birinchi marta noto’g’ri emas , ya’ni kichik harf bilan yozganman. Natijada, Python menga xato berdi. Ikkinchi marta men False emas, balkibosh harf bilan yozdim – xatolik yo’q edi. Natija: To’g’ri


Aytgancha, Not False deb o’zingiz yozib ko’ring va Python nima berishini ko’ring.

Operatoror

True yoki False – qiymat True 
True yoki True – qiymat True 
False yoki True – qiymat True 
False yoki False – qiymat False

Bu operator aytadi: To’g’ri yoki noto’g’ri? – Bu rostmi. Agar “yoki” ifodasida kamida bitta rost bo’lsa, umumiy qiymat True bo’ladi.

Agar ikkalasi ham yolg’on bo’lsa, u holda False

Endi PowerShell oynasida quyidagi ifodani yozamiz:

5 > 2 yoki 5 < 2


Natijani ko’rib chiqaylik, u rasmdagi kabi bo’lishi kerak:

Operatorand

True va False – False qiymat 
True and True – True qiymat 
False and True – False qiymat 
False and False – False qiymat

Ya’ni, bu erda biz hamma narsani aksincha ko’ramiz. va operatori False qiymatiga ustunlik beradi. Va agar ikkala qiymat ham True va True bo’lsa, yakuniy qiymat ham True bo’ladi. 
PowerShell oynasida ifodani yozing

5 > 2 va 5 < 2

va yakuniy qiymatni toping.

Operatornot or

emas (True yoki False) – qiymat False 
not (True or True) – 
qiymat False not (False or True) – qiymat False 
not (False or False) – qiymat True

Bu erda hamma narsa aniq: birinchi navbatda biz qavs ichida harakat qilamiz, keyin esa – qavslar tashqarisida. Ma’lum bo’lishicha, not operatori qavs ichidagi qiymatni qarama-qarshi tomonga o’zgartiradi.

Operatornot and

emas (Rost va noto’g’ri) – Haqiqiy qiymat 
emas (Rost va Rost) – Noto’g’ri 
qiymat emas (False va True) – Haqiqiy qiymat 
emas (False va False) – Haqiqiy qiymat

Bu erda ham hamma narsa aniq: birinchi navbatda biz qavs ichida harakat qilamiz, keyin esa – qavslar tashqarisida.

Operator !=(teng emas)

5 != 2 – Haqiqiy qiymat 
5 != 5 – Noto‘g‘ri qiymat

Bu erda ham hamma narsa aniq: 5 2 ga teng emas – bu Haqiqat. Va 5 5 ga teng emas – bu noto’g’ri. Ba’zi dasturchilar ba’zan “teng emas” degan 
ma’noni anglatadi. <>Ammo siz darhol operatorning to’g’ri yozishiga odatlanishingiz kerak:!=

Operator ==(teng)

5 == 2 – noto’g’ri qiymat 
5 == 5 – haqiqiy qiymat

Va bu erda hamma narsa aniq: 5 2 ga teng – bu noto’g’ri, 5 esa 5 ga teng – rost.

Operator ikkita ketma-ket = belgisi sifatida yoziladi

Diqqat: buni o’zgaruvchini belgilash operatsiyasi bilan aralashtirib yubormang.

Masalan, yozuv: 
peremen = 5 + 2    – peremen o’zgaruvchisiga 5 va 2 yig’indisining tayinlanishi.

Va kirish:

7 == 5 + 2    oddiy mantiqiy ifoda bo’lib, unda biz haqiqiy yoki noto’g’ri qiymatga ega bo’lamiz. PowerShell-da qanday ko’rinishini ko’ring.

Siz nafaqat raqamlarni, balki so’zlarni ham solishtirishingiz mumkin.

Masalan, PowerShell ga ‘lodka’ == ‘lodka’ ifodasini kiritsangiz , Python True qiymatini qaytaradi. Va agar ‘lodka’ == ‘notebook’ bo’lsa – qiymat False bo’ladi.

Uy vazifasi

  1. Asosiy mantiqiy operatorlarni eslang.
  2. Har bir ifoda va har bir operator uchun 2 ta misol yozing – birinchi misol raqam bilan, ikkinchisi matn bilan.
  3. PowerShell-ni kiriting va keyin quyidagi ifodani tahlil qiling:5 != 2 va emas (‘lodka’ != ‘notebook’ yoki ‘lodka’ == ‘lodka’ )Diqqat: qiymat False bo’lishi kerak

Keyingi darsda biz mantiqiy ifodalarni amalda qo’llashni boshlaymiz va ushbu mantiqiy harakatlarning qiymatlarini hisobga oladigan dastur kodini yozamiz – 26-darsga o’ting .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *