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

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

پیشنهاد مقاله: برنامه‌نویسی شی‌گرا در پایتون

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

عملگرها (Operators) کاراکترهای خاصی در پایتون هستند که پردازش‌های حسابی و منطقی روی متغیرها انجام می‌دهند. یک مثال ساده در این زمینه جمع دو عدد با یکدیگر است.

2+3

5

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

 

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

 

عملگرهای حسابی (Arithmetic Operators) برای محاسبات ریاضی مانند جمع، تفریق، ضرب و موارد این چنینی استفاده می‌شوند. در جدول زیر، عملگرهای حسابی موجود در پایتون ارائه و عملکرد آن‌ها همراه با مثال نشان داده شده است.

عملگرشرح عملکردمثال
+جمع کردن دو عملوند یا عمل یگانی مثبتx + y
+2
تفریق عملوند سمت راست از سمت چپ یا عمل یگانی منفیx – y
2-
*ضرب دو عملوندx * y
/تقسیم کردن عملوند سمت چپ بر سمت راستx / y
%عملیات پیمانه‌ای (محاسبه باقیمانده تقسیم عملوند سمت چپ بر سمت راست)(باقیمانده x % y (x/y
//خارج قسمت صحیح را در خروجی نشان می‌دهد.x // y
**به توان y رساندن متغیر x(x به توان y شده) x**y

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

x = 15

y = 4

# Output: x + y = 19

print(‘x + y =’,x+y)

# Output: x – y = 11

print(‘x – y =’,x-y)

# Output: x * y = 60

print(‘x * y =’,x*y)

# Output: x / y = 3.75

print(‘x / y =’,x/y)

# Output: x // y = 3

print(‘x // y =’,x//y)

# Output: x ** y = 50625

print(‘x ** y =’,x**y)

خروجی دستورات بالا به شرح زیر است:

x + y = 19

x – y = 11

x * y = 60

x / y = 3.75

x // y = 3

x ** y = 50625

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

عملگرهای مقایسه  (Comparison Operators)  با هدف مقایسه مقادیر استفاده می‌شوند. خروجی این عملگرد به صورت درست یا اشتباه (True یا False)  نشان داده می‌شوند. در جدول زیر عملگرهای مقایسه مورد استفاده در پایتون را مشاهده می‌کنید.

عملگرشرح عملکردمثال
<عملگر فوق زمانی درست است که عملوند سمت چپ بزرگ‌تر از سمت راست باشد.x > y
>زمانی درست است که عملوند سمت چپ کوچک‌تر از سمت راست باشد.x < y
==زمانی درست است که مقدار هر دو عمل‌وند یکسان باشدx == y
=!زمانی درست است که مقدار دو عملوند برابر نباشند.x != y
=<زمانی درست است که مقدار عملوند سمت چپ، بزرگ‌تر یا مساوی سمت راست باشد.x >= y
=>زمانی درست است که مقدار عملوند سمت چپ، کوچک‌تر یا مساوی سمت راست باشد.x <= y

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

x = 10

y = 12

# Output: x > y is False

print(‘x > y  is’,x>y)

# Output: x < y is True

print(‘x < y  is’,x<y)

# Output: x == y is False

print(‘x == y is’,x==y)

# Output: x != y is True

print(‘x != y is’,x!=y)

# Output: x >= y is False

print(‘x >= y is’,x>=y)

# Output: x <= y is True

print(‘x <= y is’,x<=y)

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

عملگرهای منطقی (Logical Operators)، برای اعمال عملیاتی در سطح بیت روی مقادیر استفاده می‌شوند. به بیان دقیق‌تر، این عملگرها از طریق یک محاسبه بیتی نتایجی را به شکل درست یا اشتباه باز می‌گرداند. در این گروه عملگرهای Or، And و Not در دسترس توسعه‌دهندگان قرار دارد.

عملگرشرح عملکردمثال
andاگر هر دو عملوند درست (True) باشند، مقدار درست (True) را بر می‌گرداند.x and y
orدر صورتی درست (True) است که یکی از عملوندها مخقدر درست (True) را برگرداند.x or y
notدر صورتی درست (True) است که مقدار عملوند اشتباه (False)  باشد.not x

‌مثال‌های کاربردی در ارتباط با عملگرهای منطقی

x = True

y = False

# Output: x and y is False

print(‘x and y is’,x and y)

# Output: x or y is True

print(‘x or y is’,x or y)

# Output: not x is False

print(‘not x is’,not x)

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

یکی از مهم‌ترین و پر کاربردترین عملگرهای بیتی (Bitwise Operators) در دنیای برنامه‌نویسی این عملگرها هستند که روی عملوندهایی از نوع رشته یا مقادیر دودویی کار می‌کنند. همان‌گونه که از نام این نوع عملگرها مشخص است، فرآیند انجام محاسبات روی آن‌ها بیت به بیت انجام می‌شود. به‌طور مثال، 2 در حالت دودویی برابر با 10 و 7 برابر با 111 است. جدول زیر عملکرد این عملگرها را نشان می‌دهد. لازم به توضیح است در جدول زیر x=10 برابر با 00001010 و y=4 برابر با 0100 000 است.

عملگرشرح عملکردمثال
&AND بیتی (و بیتی)x& y = 0 (0000 0000)
|OR بیتی (یا بیتی)x | y = 14 (0000 1110)
~Bitwise NOT (نقیض بیتی)~x = -11 (1111 0101)
^XOR بیتیx ^ y = 14 (0000 1110)
<<شیفت به راست بیتی (جا به جایی به راست بیتی)x>> 2 = 2 (0000 0010)
>>شیفت به چپ بیتی (جا به جایی به چپ بیتی)x<< 2 = 40 (0010 1000)

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

عملگرهای تخصیص (Assignment Operators) در زبان برنامه‌نویسی پایتون برای تخصیص مقدار به یک متغیر استفاده می‌شود. به‌طور مثال دستور a=5 مقدار 5 را به متغیر a اختصاص می‌دهد. این مدل تخصیص ساده‌ترین نوع انتساب است. با این‌حال، عملگرهای ترکیبی نیز وجود دارند که شکل پیشرفته‌تری دارند. به‌طور مثال، دستور  a +=5 به متغیر اضافه می‌شود و بعدتر به‌طور مشابه تخصیص پیدا می‌کند. اگر بخواهیم دستور فوق را به شکل ساده‌تری بنویسیم باید از دستور a=a+5 استفاده کنیم. در جدول زیر عملگرهای تخصیصی در پایتون را مشاهده می‌کنید.

عملگرمثالبرابر است با
=x = 5x = 5
=+x += 5x = x + 5
=-x -= 5x = x – 5
=*x *= 5x = x * 5
=/x /= 5x = x / 5
=%x %= 5x = x % 5
=//x //= 5x = x // 5
=**x **= 5x = x ** 5
=&x &= 5x = x & 5
=|x |= 5x = x | 5
=^x ^= 5x = x ^ 5
=<<x >>= 5x = x >> 5
=>>x <<= 5x = x << 5

‌عملگرهای ویژه

در زبان‌های برنامه‌نویسی عملگرهای خاصی وجود دارند که عملکردی خاص‌منظوره دارند و ممکن است تنها در آن زبان برنامه‌نویسی آن‌ها را مشاهده کنید. زبان پایتون انواع خاصی از عملگرها مانند عملگر همانی (Identity Operator) یا عملگر عضویت دارد که در ادامه با آن‌ها آشنا می‌شویم.

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

is و is not عملگرهای همانی در پایتون هستند و برای بررسی این موضوع که آیا دو مقدار (یا متغیر) در بخش مشابهی از حافظه قرار دارند یا نه استفاده می‌شوند. دقت کنید، مساوی بودن دو متغیر، به معنای آن نیست که همانی هستند.

عملگرشرح عملکردمثال
isدر شرایطی صحیح (True)  است که عملوندها همانی باشند (به شی مشابهی ارجاع داشته باشند).x is True
is notدر شرایطی صحیح  (True) است که عملوندها همانی نباشند (به شی مشابهی ارجاع نداشته باشند).x is not True

‌مثالی در این زمینه

x1 = 5

y1 = 5

x2 = ‘Hello’

y2 = ‘Hello’

x3 = [1,2,3]

y3 = [1,2,3]

# Output: False

print(x1 is not y1)

# Output: True

print(x2 is y2)

# Output: False

print(x3 is y3)

همان‌گونه که در قطعه کد بالا مشاهده می‌کنید  x1 و y1 اعداد صحیحی با مقادیر مشابه هستند، بنابراین، برابر و همانی هستند. مساله مشابهی برای x2 و y2 نیز وجود دارد (رشته‌ها). اما، x3  و y3 فهرست هستند. این موارد مساوی و غیر همانی هستند. دلیل عدم همانی بودن این است که مفسر پایتون آن‌ها را به طور جداگانه در حافظه قرار می‌دهد، اگرچه با هم مساوی هستند.

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

In و not in عملگرهای عضویت در پایتون هستند و این موضوع را بررسی می‌کنند که آیا یک مقدار یا متغیر در یک توالی پیدا می‌شود یا نه (رشته، لیست، مجموعه و لغت‌نامه). در یک لغت‌نامه، تنها می‌توان وجود یا عدم وجود یک کلید و نه یک مقدار را بررسی کرد. در جدول زیر، عملگرهای عضویت را مشاهده می‌کنید.

عملگرشرح عملکردمثال
inدر صورتی صحیح است که مقدار/متغیر در توالی پیدا شود.5 in x
not inدر صورتی صحیح است که مقدار/متغیر در توالی پیدا نشود.5 not in x

‌مثالی در ارتباط با عملگرهای عضویت

x = ‘Hello world’

y = {1:’a’,2:’b’}

# Output: True

print(‘H’ in x)

# Output: True

print(‘hello’ not in x)

# Output: True

print(1 in y)

# Output: False

print(‘a’ in y)

در قطعه کد بالا، ‘H’ در x قرار دارد، در حالی که‘hello’ در x نیست (دقت کنید پایتون به بزرگی و کوچکی حروف حساس است). به همین ترتیب 1 کلید و a مقدار در لغت‌نامه y است. بنابراین ‘a’ in y خروجی False را بر می‌گرداند.

نویسنده: حمیدرضا تائبی

منبع:

https://www.programiz.com/python-programming/operators