باسلام به شما دوستان عزیز، امیدوارم که خوب باشید. درمورد عملگرهای اصلی پایتون (Python operator) براتون مطلبی گذاشتم .عملگرها سازه هایی هستند که توسط آن ها می توان مقدار عملوندها را دستکاری کرد.
به این عبارت دقت کنید: ۴ + ۵ = ۹٫ در این عبارت، اعداد ۴ و ۵ عملوند (operand) خوانده شده و علامت جمع، عملگر (operator) نامیده می شود.
انواع عملگرها
زبان پایتون از عملگرهای زیر پشتیبانی می کند.
۱٫ عملگرهای محاسباتی (arithmetic operators)
۲٫ عملگرهای مقایسه ای (comparison operators)
۳٫ عملگرهای انتساب (assignment operator)
۴٫ عملگرهای منطقی (logical operator)
۵٫ عملگرهای بیتی (bitwise operators)
۶٫ Membership operators
۷٫ Identity operators
در زیر به شرح تک تک این عملگرها خواهیم پرداخت.
عملگرهای محاسباتی
فرض کنید متغیر به نام a مقدار ۱۰ و متغیر به نام b مقدار ۲۰ را نگه می دارد:
عملگر
شرح
مثال
جمع +
مقدار a را با مقدار b جمع می بندد.
a + b = 30
– تفریق
عملوند سمت راست را از عملوند سمت چپ کسر می کند.
a – b = -10
* ضرب
مقادیر متغیرهای a و b را درهم ضرب می کند.
a * b = 200
/ تقسیم
عملوند سمت چپ را بر عملوند سمت راست تقسیم می کند.
b / a = 2
% باقی مانده تقسیم
عملوند سمت چپ را بر عملوند سمت راست تقسیم کرده و باقی مانده را بازمی گرداند.
b % a = 0
** توان
عملوندی را به توان عملوند دیگری می برد.
a**b = 20 به توان۱۰
//
تقسیم به کف
دو عدد را بر هم تقسیم کرده و نتیجه ی آن را به پایین گرد می کند.
۹//۲ = ۴ و ۹٫۰//۲٫۰ = ۴٫۰
عملگرهای مقایسه ای پایتون
این عملگرها مقادیر در دو طرف عملگر را با هم مقایسه کرده و رابطه ی بین آن ها را ارزیابی می کند. این عملگرها تحت عنوان relational operators نیز شناخته می شوند.
متغیر a مقدار ۱۰ و متغیر b مقدار ۲۰ را در خود ذخیره دارد:
عملگر
شرح
مثال
==
در صورت برابر بودن مقدار دو عملوند، شرط صحیح می باشد.
صحیح نمی باشد. (a == b)
!=
در صورت برابر نبودن مقدار عملوندها، شرط صحیح می شود.
اگر مقادیر دو عملوند برابر نباشد، در آن صورت شرط صحیح می شود.
شرط (a b)صحیح می باشد. درست شبیه عملگر != عمل می کند.
>
چنانچه مقدار عملوند سمت چپ بزرگتر از مقدار عملوند سمت راست باشد، شرط صحیح می باشد.
(a > b) صحیح نمی باشد.
<
اگر مقدار عملوند سمت چپ کمتر از مقدار عملوند سمت راست باشد، شرط صحیح می باشد.
صحیح می باشد.(a =
اگر مقدار عملوند سمت چپ بزرگتر از یا برابر مقدار عملوند سمت راست باشد، در آن صورت شرط صحیح می شود.
صحیح نمی باشد.(a >= b)
<=
اگر مقدار عملوند سمت چپ کوچکتر از یا مساوی مقدار عملوند سمت چپ باشد، شرط صحیح می شود.
صحیح می باشد. (a <= b)
عملگرهای انتساب
عملگر
شرح
مثال
=
یک مقداری را به متغیر تخصیص می دهد.
جمع دو مقدار a و b را داخل متغیر c می ریزد.
+= Add AND
عملوند سمت راست را به عملوند سمت چپ اضافه کرده و نتیجه را در داخل عملوند سمت چپ می ریزد.
c و a را جمع زده و نتیجه را داخل c می ریزد.
c += a درواقع همان c = c + a می باشد.
-= Subtract AND
عملوند a را از c کسر می کند و نتیجه را به c تخصیص می دهد.
c -= a درحقیقت همان c = c – a می باشد.
*= Multiply AND
عملوند سمت راست را در عملوند سمت چپ ضرب کرده و نتیجه را در عملوند سمت چپ می ریزد.
c *= a برابر است با c = c * a.
/= Divide AND
متغیرهای c و a را بر هم تقسیم کرده و نتیجه را در عملوند سمت چپ می ریزد.
c /= a در واقع همان c = c / a می باشد.
%= Modulus AND
باقی مانده تقسیم مقدار دو متغیر را محسابه کرده و آن را به عملگر سمت چپ تخصیص می دهد.
c %= a درواقع همان c = c % a می باشد.
**= Exponent AND
عملیات توان بر روی دو متغیر انجام داده و نتیجه را در متغیر سمت چپ عملگر می ریزد.
c **= a درواقع همان c = c ** a می باشد.
//= تقسیم به کف
c و a را بر هم تقسیم کرده، نتیجه ی آن را به پایین گرد می کند، سپس آن را داخل c می ریزد.
c //= a در واقع همان c = c // a می باشد.
عملگرهای بیتی در پایتون
عملگرهای bitwise با بیت ها سروکار داشته و مقادیر بیت ها را تغییر می دهد. اگر a = 60 باشد و b = 13، هر یک در فرمت دودیی بدین صورت خواهند بود –
a = 0011 1100
b = 0000 1101
—————–
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
زبان پایتون از عملگرهای بیتی زیر پشتیبانی می کند:
عملگر
شرح
مثال
& Binary AND
در صورتی که در هر دو ۱ باشد، ۱ را در نتیجه جای گذاری می کند، در غیر این صورت صفر را در نتیجه کپی می کند.
۰۰۰۰ ۱۱۰۰معادل (a & b)
| Binary OR
اگر در یکی از دو عملوند، ۱ وجود داشته باشد، ۱ در نتیجه کپی می شود.
۰۰۱۱ ۱۱۰۱ معادل(a | b) = 61
^ Binary XOR
اگر هر دو عملوند یکی باشند صفر و در غیر این صورت ۱ را در نتیجه کپی می کند.
۰۰۱۱ ۰۰۰۱ معادل(a ^ b) = 49
~ Binary Ones Complement
یک عملگر یگانی نقیض است که جای بیت ها را با هم عوض می کند. هرجا ۱ است ۰ و هر ۱ است صفر می گذارد.
چون که در فرمت دودویی عدد علامت دار نداریم، مکمل ۲ عدد ۱۱۰۰ ۰۰۱۱ را نمایش دادیم. (~a ) = -61 معادل ۱۱۰۰ ۰۰۱۱ است.
<< Binary Left Shift
مقدار عملوند سمت چپ به تعداد بیت های مشخص شده توسط عملوند سمت راست به چپ رانده می شوند.
a <> Binary Right Shift
مقدار عملوندهای سمت چپ به تعداد بیت های مشخص شده توسط عملوند سمت راست، به راست shift می شوند.
معادلa >> = 15
می باشد.۰۰۰۰ ۱۱۱۱
عملگرهای منطقی پایتون
زبان پایتون از عملگرهای منطقی زیر پشتیبانی می کند. فرض بگیرید متغیر a دارای مقدار ۱۰ و متغیر b دارای مقدار ۲۰ می باشد:
عملگر
شرح
مثال
and Logical AND
اگر هر دو علوند صحیح باشند، شرط برقرار و صحیح می باشد.
(a and b) صحیح می باشد.
or Logical OR
چنانچه یکی از دو عملوند صفر نباشد، شرط برقرار می شود (مقدار true برگردانده می شود).
(a or b) صحیح می باشد.
not Logical NOT
به منظور معکوس کردن وضعیت منطقی عملوند بکار می رود.
Not(a and b) می شود.
Memberships operator در پایتون
عملگرهای membership بررسی می کنند آیا متغیر مورد نظر در یک مجموعه (sequence) همچون رشته، list یا tuple وجود دارد یا خیر. در کل دو عملگر بررسی عضویت وجود دارد که در زیر شرح داده شده:
عملگر
شرح
مثال
in
در صورت یافتن متغیر مورد نظر در مجموعه ی مشخص شده، true برمی گرداند و در غیر این صورت false.
x in y، اگر x یک عضو از مجموعه ی y باشد، ۱ برمی گرداند.
not in
در صورت یافت نشدن متغیر مورد نظر در مجموعه ی مشخص شده، true برمی گرداند و در غیر این صورت false می دهد.
x not in y، اگر x عضوی از مجموعه ی y نباشد، ۱ برمی گرداند.
Identity operator ها در پایتون
عملگرهای Identity، مکان های قرار گیری دو شی را با هم مقایسه می کند (بررسی می کند آیا دو شی باهم برابر هستند یا خیر.)
عملگر
شرح
نمونه
is
اگر متغیرهای هر دو طرف عملگر به شی یکسان اشاره داشته باشند، true برمی گرداند و در غیر این صورت false.
x is y، اگر id(x) برابر با id(y) باشد، ۱ برمی گرداند.
is not
چنانچه متغیر در دو طرف عملگر به شی یکسان اشاره داشته باشد، false برمی گرداند و در غیر این صورت true بازمی گرداند.
x is not y ، اگر id(x) با id(y) برابر نباشد، ۱ برمی گرداند.
اولویت عملگرها در پایتون
جدول زیر تمامی عملگرها را به ترتیب اولویت فهرست کرده:
عملگر
شرح
**
توان
~ + –
Ccomplement, unary plus and minus (method names for the last two are +@ and -@)
* / % //
ضرب، تقسیم، باقی مانده ی تقسیم و تقسیم به کف
+ –
جمع و تفریق
>> <<
Right and left bitwise shift
&
Bitwise 'AND'
^ |
Bitwise exclusive `OR' and regular `OR'
<= >=
عملگرهای مقایسه ای
== !=
عملگرهای برابری
= %= /= //= -= += *= **=
عملگرهای تخصیص یا انتساب
is is not
Identity operators
عملگرهای بررسی برابری اشیا
in not in
Membership operators
عملگرهای بررسی عوضیت متغیر در مجموعه
not or and
عملگرهای منطقی