آموزش پایتون - عملگرها

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

عملگرهای پایتون نمادهای ویژه‌ای هستند که برای انجام عملیات‌های خاص روی یک یا چند عملوند استفاده می‌شوند. متغیرها، مقادیر یا عبارت‌ها می‌توانند به‌عنوان عملوند استفاده شوند. برای مثال، عملگر جمع در پایتون (+) برای انجام عملیات جمع روی دو متغیر، مقدار یا عبارت به کار می‌رود.

در ادامه برخی از اصطلاحات مربوط به عملگرهای پایتون آمده است:

  • عملگرهای یکانی (Unary): عملگرهایی در پایتون که برای انجام یک عملیات خاص تنها به یک عملوند نیاز دارند، عملگرهای یکانی نامیده می‌شوند.
  • عملگرهای دودویی (Binary): عملگرهایی در پایتون که برای انجام یک عملیات خاص به دو عملوند نیاز دارند، عملگرهای دودویی نامیده می‌شوند.
  • عملوندها (Operands): متغیرها، مقادیر یا عبارت‌هایی که همراه با عملگر برای انجام یک عملیات خاص استفاده می‌شوند.

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

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

  • عملگرهای حساب‌داری (ریاضی)
  • عملگرهای مقایسه‌ای (رابطه‌ای)
  • عملگرهای انتساب
  • عملگرهای منطقی
  • عملگرهای بیتی
  • عملگرهای عضویت
  • عملگرهای هویت

بیایید تمامی عملگرها را یکی‌یکی بررسی کنیم.

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

عملگرهای حساب‌داری پایتون برای انجام عملیات‌های پایه ریاضی مانند جمع، تفریق، ضرب و غیره استفاده می‌شوند.

جدول زیر شامل تمامی عملگرهای حساب‌داری به همراه نماد، نام و مثال‌های آن‌ها است (فرض کنید مقادیر a و b به ترتیب ۱۰ و ۲۰ هستند) −

عملگر نام مثال
+ جمع a + b = 30
- تفریق a - b = -10
* ضرب a * b = 200
/ تقسیم b / a = 2
% باقیمانده (باقیمانده تقسیم) b % a = 0
** توان a**b =10**20
// تقسیم صحیح (کف) 9//2 = 4

مثالی از عملگرهای حساب‌داری در پایتون

a = 21
b = 10
c = 0

c = a + b
print ("a: {} b: {} a+b: {}".format(a,b,c))

c = a - b
print ("a: {} b: {} a-b: {}".format(a,b,c) )

c = a * b
print ("a: {} b: {} a*b: {}".format(a,b,c))

c = a / b
print ("a: {} b: {} a/b: {}".format(a,b,c))

c = a % b
print ("a: {} b: {} a%b: {}".format(a,b,c))

a = 2
b = 3
c = a**b 
print ("a: {} b: {} a**b: {}".format(a,b,c))

a = 10
b = 5
c = a//b 
print ("a: {} b: {} a//b: {}".format(a,b,c))

خروجی

a: 21 b: 10 a+b: 31
a: 21 b: 10 a-b: 11
a: 21 b: 10 a*b: 210
a: 21 b: 10 a/b: 2.1
a: 21 b: 10 a%b: 1
a: 2 b: 3 a**b: 8
a: 10 b: 5 a//b: 2

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

عملگرهای مقایسه‌ای پایتون مقادیر دو طرف خود را مقایسه کرده و رابطه بین آن‌ها را تعیین می‌کنند. به این عملگرها، عملگرهای رابطه‌ای نیز گفته می‌شود.

جدول زیر شامل تمامی عملگرهای مقایسه‌ای به همراه نماد، نام و مثال‌های آن‌ها است (فرض کنید مقادیر a و b به ترتیب ۱۰ و ۲۰ هستند) −

عملگر نام مثال
== مساوی (a == b) درست نیست.
!= نامساوی (مخالف) (a != b) درست است.
> بزرگ‌تر از (a > b) درست نیست.
< کوچک‌تر از (a < b) درست است.
>= بزرگ‌تر یا مساوی (a >= b) درست نیست.
<= کوچک‌تر یا مساوی (a <= b) درست است.

مثالی از عملگرهای مقایسه‌ای در پایتون

a = 21
b = 10
if ( a == b ):
   print ("Line 1 - a is equal to b")
else:
   print ("Line 1 - a is not equal to b")

if ( a != b ):
   print ("Line 2 - a is not equal to b")
else:
   print ("Line 2 - a is equal to b")

if ( a < b ):
   print ("Line 3 - a is less than b" )
else:
   print ("Line 3 - a is not less than b")

if ( a > b ):
   print ("Line 4 - a is greater than b")
else:
   print ("Line 4 - a is not greater than b")

a,b=b,a #values of a and b swapped. a becomes 10, b becomes 21

if ( a <= b ):
   print ("Line 5 - a is either less than or equal to  b")
else:
   print ("Line 5 - a is neither less than nor equal to  b")

if ( b >= a ):
   print ("Line 6 - b is either greater than  or equal to b")
else:
   print ("Line 6 - b is neither greater than  nor equal to b")

خروجی

Line 1 - a is not equal to b
Line 2 - a is not equal to b
Line 3 - a is not less than b
Line 4 - a is greater than b
Line 5 - a is either less than or equal to  b
Line 6 - b is either greater than  or equal to b

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

عملگرهای انتساب پایتون برای مقداردهی به متغیرها استفاده می‌شوند. در ادامه جدولی آورده شده است که تمامی عملگرهای انتساب پایتون را نشان می‌دهد.

جدول زیر شامل تمامی عملگرهای انتساب به همراه نماد، نام و مثال‌های آن‌ها است −

عملگر مثال معادل با
= a = 10 a = 10
+= a += 30 a = a + 30
-= a -= 15 a = a - 15
*= a *= 10 a = a * 10
/= a /= 5 a = a / 5
%= a %= 5 a = a % 5
**= a **= 4 a = a ** 4
//= a //= 5 a = a // 5
&= a &= 5 a = a & 5
|= a |= 5 a = a | 5
^= a ^= 5 a = a ^ 5
>>= a >>= 5 a = a >> 5
<<= a <<= 5 a = a << 5

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

a = 21
b = 10
c = 0
print ("a: {} b: {} c : {}".format(a,b,c))
c = a + b
print ("a: {}  c = a + b: {}".format(a,c))

c += a
print ("a: {} c += a: {}".format(a,c))

c *= a
print ("a: {} c *= a: {}".format(a,c))

c /= a 
print ("a: {} c /= a : {}".format(a,c))

c  = 2
print ("a: {} b: {} c : {}".format(a,b,c))
c %= a
print ("a: {} c %= a: {}".format(a,c))

c **= a
print ("a: {} c **= a: {}".format(a,c))

c //= a
print ("a: {} c //= a: {}".format(a,c))

خروجی

a: 21 b: 10 c : 0
a: 21  c = a + b: 31
a: 21 c += a: 52
a: 21 c *= a: 1092
a: 21 c /= a : 52.0
a: 21 b: 10 c : 2
a: 21 c %= a: 2
a: 21 c **= a: 2097152
a: 21 c //= a: 99864

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

عملگرهای بیتی پایتون روی بیت‌ها کار می‌کنند و عملیات را بیت به بیت انجام می‌دهند. این عملگرها برای مقایسه اعداد باینری (دوتایی) به کار می‌روند.

جدول زیر شامل تمامی عملگرهای بیتی به همراه نماد، نام و مثال‌های آن‌ها است −

عملگر نام مثال
& AND (و) a & b
| OR (یا) a | b
^ XOR (یا اختصاصی) a ^ b
~ NOT (نقیض/متمم) ~a
<< شیفت به چپ با پرکردن صفر a << 3
>> شیفت به راست علامت‌دار a >> 3

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

a = 20            
b = 10            

print ('a=',a,':',bin(a),'b=',b,':',bin(b))
c = 0

c = a & b;        
print ("result of AND is ", c,':',bin(c))

c = a | b;     
print ("result of OR is ", c,':',bin(c))

c = a ^ b;        
print ("result of EXOR is ", c,':',bin(c))

c = ~a;           
print ("result of COMPLEMENT is ", c,':',bin(c))

c = a << 2;       
print ("result of LEFT SHIFT is ", c,':',bin(c))

c = a >> 2;       
print ("result of RIGHT SHIFT is ", c,':',bin(c))

خروجی

a= 20 : 0b10100 b= 10 : 0b1010
result of AND is  0 : 0b0
result of OR is  30 : 0b11110
result of EXOR is  30 : 0b11110
result of COMPLEMENT is  -21 : -0b10101
result of LEFT SHIFT is  80 : 0b1010000
result of RIGHT SHIFT is  5 : 0b101

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

عملگرهای منطقی پایتون برای ترکیب دو یا چند شرط و بررسی نتیجه نهایی استفاده می‌شوند. عملگرهای منطقی زیر توسط زبان پایتون پشتیبانی می‌شوند. فرض کنید متغیر a مقدار ۱۰ و متغیر b مقدار ۲۰ را درون خود دارند، در این صورت:

جدول زیر شامل تمامی عملگرهای منطقی به همراه نماد، نام و مثال‌های آن‌ها است −

عملگر نام مثال
and AND (و) a and b
or OR (یا) a or b
not NOT (نقیض) not(a)

مثالی از عملگرهای منطقی در پایتون

var = 5

print(var > 3 and var < 10)
print(var > 3 or var < 4)
print(not (var > 3 and var < 10))

خروجی

True
True
False

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

عملگرهای عضویت در پایتون، عضویت یک مقدار را در یک دنباله (مانند رشته‌ها، لیست‌ها یا تاپل‌ها) بررسی می‌کنند.

دو عملگر عضویت وجود دارد که در ادامه توضیح داده شده‌اند −

عملگر توضیحات مثال
in اگر متغیر را در دنباله مشخص‌شده پیدا کند مقدار True و در غیر این صورت مقدار False را برمی‌گرداند. a in b
not in اگر متغیر را در دنباله مشخص‌شده پیدا نکند مقدار True و در غیر این صورت مقدار False را برمی‌گرداند. a not in b

مثالی از عملگرهای عضویت در پایتون

a = 10
b = 20
list = [1, 2, 3, 4, 5 ]

print ("a:", a, "b:", b, "list:", list)

if ( a in list ):
   print ("a is present in the given list")
else:
   print ("a is not present in the given list")

if ( b not in list ):
   print ("b is not present in the given list")
else:
   print ("b is present in the given list")

c=b/a
print ("c:", c, "list:", list)
if ( c in list ):
   print ("c is available in the given list")
else:
    print ("c is not available in the given list")

خروجی

a: 10 b: 20 list: [1, 2, 3, 4, 5]
a is not present in the given list
b is not present in the given list
c: 2.0 list: [1, 2, 3, 4, 5]
c is available in the given list

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

عملگرهای هویت پایتون موقعیت حافظه دو شیء را با یکدیگر مقایسه می‌کنند.

دو عملگر هویت وجود دارد که در ادامه توضیح داده شده‌اند −

عملگر توضیحات مثال
is اگر هر دو متغیر به یک شیء یکسان اشاره کنند مقدار True و در غیر این صورت مقدار False را برمی‌گرداند. a is b
is not اگر هر دو متغیر به یک شیء یکسان اشاره نکنند مقدار True و در غیر این صورت مقدار False را برمی‌گرداند. a is not b

مثالی از عملگرهای هویت در پایتون

a = [1, 2, 3, 4, 5]
b = [1, 2, 3, 4, 5]
c = a

print(a is c)
print(a is b)

print(a is not c)
print(a is not b)

خروجی

True
False
False
True

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

تقدم عملگرها، ترتیب ارزیابی و محاسبه عملگرها را تعیین می‌کند. عملگرهای پایتون سطوح مختلفی از تقدم را دارند. جدول زیر شامل لیست عملگرها از بالاترین تا پایین‌ترین اولویت است −

جدول زیر تمامی عملگرها را از بالاترین تقدم تا پایین‌ترین اولویت فهرست می‌کند.

شماره عملگر و توضیحات
1

**

توان‌رسانی (به توان رساندن)

2

~ + -

متمم، مثبت و منفی یکانی (نام متدها برای دو مورد آخر +@ و -@ است)

3

* / % //

ضرب، تقسیم، باقیمانده و تقسیم صحیح

4

+ -

جمع و تفریق

5

>> <<

شیفت بیتی به راست و چپ

6

&

عملگر بیتی 'AND' (و)

7

^ |

عملگر بیتی اختصاصی 'OR' و 'OR' معمولی

8

<= < > >=

عملگرهای مقایسه‌ای

9

<> == !=

عملگرهای برابری

10

= %= /= //= -= += *= **=

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

11

is is not

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

12

in not in

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

13

not or and

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

اطلاعات بیشتری درباره تقدم عملگرهای پایتون در اینجا بخوانید: تقدم عملگرهای پایتون

پیشرفت مطالعه: وضعیت خوانده‌شدن این درس فقط در همین مرورگر ذخیره می‌شود؛ بدون نیاز به حساب کاربری.