منطق بولین
منطق بولین برای ساخت شرط های پیچیده تر با استفاده از 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 |