منطق بولین
منطق بولین برای ساخت شرطهای پیچیدهتر با استفاده از if به کار میرود، زمانی که بیش از یک شرط باید بررسی شود. در پایتون، عملگرهای بولین شامل and
، or
و not
هستند. عملگر and
زمانی مقدار True
را بازمیگرداند که هر دو شرط صحیح باشند، در غیر این صورت مقدار False
برمیگرداند.
>>> 1 == 1 and 2 == 2
True
>>> 1 == 1 and 2 == 3
False
>>> 1 != 1 and 2 == 2
False
>>> 2 < 1 and 3 > 6
False
عملگر or
زمانی مقدار True
را بازمیگرداند که حداقل یکی از شرطها صحیح باشد. تنها در صورتی که هر دو شرط ناصحیح باشند، مقدار False
برمیگرداند.
>>> 1 == 1 or 2 == 2
True
>>> 1 == 1 or 2 == 3
True
>>> 1 != 1 or 2 == 2
True
>>> 2 < 1 or 3 > 6
False
عملگر not
برخلاف دو عملگر قبلی تنها یک شرط را بررسی میکند و نتیجه آن را معکوس مینماید. یعنی اگر شرط درست باشد، False
و اگر نادرست باشد، True
برمیگرداند.
>>> not 1 == 1
False
>>> not 1 > 7
True
اولویت عملگرها
اولویت عملگرها در تمام زبانهای برنامهنویسی اهمیت دارد. این مفهوم از ریاضیات گرفته شده و تعیین میکند که کدام عملگر پیش از بقیه اجرا میشود. قطعه کد زیر نحوه اولویت عملگر ==
را نسبت به سایر عملگرها نشان میدهد:
>>> False == False or True
True
>>> False == (False or True)
False
>>> (False == False) or True
True
جدول اولویتها
لیست زیر اولویت عملگرهای پایتون را از بالاترین به پایینترین سطح نمایش میدهد:
توضیحات | عملگر |
---|---|
توان | ** |
علامت مثبت، منفی و متمم | ~ + - |
ضرب، تقسیم، باقیمانده و تقسیم صحیح | * / % // |
جمع و تفریق | + - |
شیفت به چپ و راست | >> << |
AND بیتی | & |
OR و XOR بیتی | ^ | |
مقایسه | <= < > >= |
برابری و نابرابری | == != |
عملگرهای انتساب | = %= /= //= -= += *= **= |
عملگرهای هویت | is, is not |
عملگرهای عضویت | in, not in |
عملگرهای منطقی | not, and, or |