عملگر های پایه [ آموزش مقدماتی پایتون قسمت چهار ]

  • آخرین بروزرسانی در سه‌شنبه 15 سپتامبر 2020

    Average rating 5 / 5. Vote count: 1

عملگر ها مفاهیمی در زبان برنامه نویسی پایتون هستند که می توانند مقدار عملوند ها را تغییر دهند. عبارت 4 + 5 = 9 را در نظر بگیرید. در این مثال 4 و 5 عملوند و + عملگر است.

در زبان پایتون از عملگر های زیر پشتیبانی می شود.

در ادامه به تک تک این عملگر ها نگاهی خواهیم داشت.

عملگر های حسابی پایتون

فرض کنید که متغیر a مقدار 10 را در خود نگهداری می کند و متغیر b مقدار 21 را در خود نگهداری می کند؛ در این صورت:

عملگرتوضیحمثال
+ جمعاعداد دو طرف خود را با یکدیگر جمع می کندa + b = 31
– تفریقعملوند سمت راست را از سمت چپ کم می کندa – b = -11
* ضربدو عدد طرفین خود را در هم ضرب می کندa * b = 210
/ تقسیمعملوند سمت چپ را بر سمت راست تقسیم می کندb / a = 2.1
% باقی مانده تقسیمعملوند سمت چپ را بر سمت راست تقسیم می کند و باقی مانده را بر می گرداندb % a = 1
** توانعملیات توان را انجام می دهد و عملوند سمت چپ را به توان سمت راست می رساندa**b
//همان تقسیم است با این تفاوت که فقط قسمت صحیح عدد نتیجه را بر می گرداند9//2 = 4 و 9.0//2.0 = 4.0, -11//3 = -4, -11.0//3 = -4.0

عملگر های مقایسه ای پایتون

این عملگر ها مقادیر دو طرف خود را با یکدیگر مقایسه می کنند و درباره رابطه بین آن ها تصمیم گیری می کنند.

به این عملگر ها، عملگر های رابطه ای هم می گویند.

فرض کنید، متغیر a عدد 10 و متغیر b عدد 20 را در خود نگهداری می کند.

عملگرتوضیحمثال
==اگر مقدار دو عملوند با هم برابر باشند، شرط true می شود(a == b) که true نیست.
!=اگر مقدار دو عملوند با هم برابر نباشند، شرط true می شود(a!= b) که true است.
>اگر مقدار عملوند سمت چپ بزرگتر از مقدار عملوند سمت راست باشد، شرط true می شود(a > b) که true نیست.
<اگر مقدار عملوند سمت چپ کوچکتر از مقدار عملوند سمت راست باشد، شرط true می شود(a < b) که true است.
>=اگر مقدار عملوند سمت چپ بزرگتر یا مساوی مقدار عملوند سمت راست باشد، شرط true می شود(a >= b) که true نیست.
<=اگر مقدار عملوند سمت چپ کوچک تر یا مساوی مقدار عملوند سمت راست باشد، شرط true می شود(a <= b) که true است.

عملگر های انتساب پایتون

فرض کنید، متغیر a عدد 10 و متغیر b عدد 20 را در خود نگهداری می کند.

عملگرتوضیحمثال
=مقدار عملوند سمت راست را به عملوند سمت چپ نسبت می دهدc = a + b مقدار a + b را به c نسبت می دهد (در c قرار می دهد)
+= عملوند راست را به عملوند چپ اضافه می کند و نتیجه را به عملوند چپ نسبت می دهدc += a نتیجه یکسانی با c = c + a دارد
-= عملوند راست را از عملوند چپ کم می کند و نتیجه را به عملوند چپ نسبت می دهدc -= a نتیجه یکسانی با c = c – a دارد
*= عملوند سمت راست در سمت چپ ضرب می کند و نتیجه را به عملوند چپ نسبت می دهدc *= a نتیجه یکسانی با c = c * a دارد
/= عملوند سمت راست بر سمت چپ تقسیم می کند و نتیحه را به عملوند چپ نسبت می دهدc /= a نتیجه یکسانی با c = c / ac /= a نتیجه یکسانی با c = c / a دارد
%= عملوند سمت راست بر سمت چپ تقسیم می کند و باقی ماند تقسیم را به عملوند چپ نسبت می دهدc %= a نتیجه یکسانی با c = c % a دارد
**= عملوند سمت چپ را به توان سمت راست می رساند و نتیجه را به عملوند چپ نسبت می دهدc **= a نتیجه یکسانی با c = c ** a دارد
//= عملوند سمت راست بر سمت چپ تقسیم می کند و پاسخ را که قسمت اعشاری آن حذف شده به عملوند چپ نسبت می دهدc //= a نتیجه یکسانی با c = c // a دارد

عملگر های بیتی پایتون

عملگر های بیتی با بیت ها سر و کار دارد و عملیات بیت به بیت را روی آن ها انجام می دهد.

فرض کنید 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

برای بدست آوردن معادل باینری یک عدد integer می توانید از تابع bin() در پایتون استفاده کنید.

عملگر های بیتی زیر توسط پایتون پشتیبانی می شود.

عملگرتوضیحمثال
& باینری ANDعملگر یک بیت را به عنوان نتیجه نشان می دهد اگر در هر دو عملوند ها وجود داشته باشد.(a & b) (یعنی 0000 1100)
| باینری ORعملگر یک بیت را به عنوان نتیجه نشان می دهد اگر در یکی از دو عملوند ها وجود داشته باشد.(a | b) = 61 (یعنی 0011 1101)
^ باینری XORعملگر یک بیت را به عنوان نتیجه نشان می دهد اگر فقط در یکی از دو عملوند ها وجود داشته باشد.(a ^ b) = 49 (یعنی 0011 0001)
~ مکمل باینریباعث معکوس شدن بیت می شود(~a ) = -61 (یعنی 1100 0011 در فرم مکمل 2 به دلیل عدد باینری علامت دار است.
<< شیفت به چپ باینری
مقدار عملوند چپ به اندازه عدد عملوند سمت راست به چپ تغییر مکان می دهد
a << 2 = 240 (یعنی 1111 0000)
>> شیفت به راست باینریمقدار عملوند چپ به اندازه عدد عملوند سمت راست به راست تغییر مکان می دهدa >> 2 = 15 (یعنی 0000 1111)

عملگر های منطقی

عملگر های منطقی زیر توسط پایتون پشتیبانی می شوند.

فرض کنید متغیر a مقدار True و متغیر b مقدار False را در خود نگهداری می کند.

عملگرتوضیحمثال
and منطقیاگر هر دو عملوند true باشد، نتیجه true می شود(a and b) نتیجه False دارد.
or منطقیاگر هر یک از دو عملوند غیر صفر باشند، نتیجه true می شود(a or b) نتیجه True دارد.
not منطقیوضعیت منطقی عملوند هایش را معکوس می کندnot(a and b) نتیجه True دارد.

عملگر های عضویت

عملگر های عضویت پایتون این موضوع را بررسی می کند که آیا یک مقدار عضو یک سری مثل رشته، لیست یا تاپل است یا خیر.

دو نوع عملگر عضویت وجود دارد که توضیح آن را در ادامه می بینید.

عملگرتوضیحمثال
inاگر متغیری را در یک سری پیدا کند true و در غیر این صورت false بر می گرداند.x in y, اگر x در y پیدا شود 1 و در غیر این صورت 0 بر می گردد.
not inاگر متغیری را در یک سری پیدا نکند true و در غیر این صورت false بر می گرداند.x not in y, x in y, اگر x در y پیدا نشود 1 و در غیر این صورت 0 بر می گردد..

عملگر های هویتی

عملگر های هویتی مکان دو شی (Object) در حافظه را با یکدیگر مقایسه می کنند.

دو نوع عملگر هویتی وجود دارد.

عملگرتوضیحمثال
isاگر متغیر های هر یک از دو طرف به یک شی اشاره داشته باشد نتیجه true در غیر این صورت false خواهد بود.اگر id(x) برابر با id(y) باشد نتیجه 1 می شود.
is notاگر متغیر های هر یک از دو طرف به یک شی اشاره نداشته باشد نتیجه true در غیر این صورت false خواهد بود.x is not y, اگر id(x) برابر با id(y) نباشد نتیجه 1 می شود.

اولویت عملگر ها

در ادامه لیست عملگر را به ترتیب بیشترین به کمترین اولویت اجرا را می بینید.

شمارهعملگر و توضیح آن
1**
توان
2~ + –
مکمل، جمع، تفریق
3* / % //
ضرب، تقسیم، تقسیم با نتیجه باقی مانده، تقسیم با نتیجه باقی مانده صحیح
4+ –
جمع و تفریق
5>> <<
شیفت های راست و چپ بیتی
6&
AND بیتی
7^ |
XOR و OR بیتی
8<= < > >=
عملگر های مقایسه ای
9<> == !=
عملگر های برابری
10= %= /= //= -= += *= **=
عملگر های انتساب
11is is not
عملگر های هویتی
12in not in
عملگر های عضویت
13not یا and
عملگر های منطقی
برای دنبال کردن نوشته های کاپ کد به کانال تلگرامی آن (cupcode_ir@) بپیوندید!

دیدگاه خود را بیان کنید

@