عملگرها یکی از مهمترین عناصر دنیای برنامهنویسی هستند و برای همین تسلط بر نحوه استفاده از آنها در بوت کمپ پایتون اهمیت زیادی دارد. به بیان دقیقتر، اگر نتوانید از عملگرها به شکل درستی استفاده کنید یا شناخت دقیقی در مورد کاربردها آنها نداشته باشید، پروژههایی که قصد ساخت آنها را دارید با شکست روبرو میشوند. بنابراین مهم است که با چگونگی استفاده از آنها آشنا باشید.
در پایتون عملگرهای مختلفی در دسترس برنامهنویسان قرار دارد تا فرآیند کدنویسی سادهتر شده و برنامهنویسان بتوانند از طریق کدهای خلاصهتری کدهای کاربردی بنویسند. در این مطلب شما را با عملگرها در پایتونها و نحو استفاده از آنها همراه با مثالهای کاربردی آشنا میکنیم. بوت کمپ برنامه نویسی پر است از این مثال های کاربردی.
عملگرها در پایتون
عملگرها (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 = 5 | x = 5 |
| =+ | x += 5 | x = x + 5 |
| =- | x -= 5 | x = x – 5 |
| =* | x *= 5 | x = x * 5 |
| =/ | x /= 5 | x = x / 5 |
| =% | x %= 5 | x = x % 5 |
| =// | x //= 5 | x = x // 5 |
| =** | x **= 5 | x = x ** 5 |
| =& | x &= 5 | x = x & 5 |
| =| | x |= 5 | x = x | 5 |
| =^ | x ^= 5 | x = x ^ 5 |
| =<< | x >>= 5 | x = x >> 5 |
| =>> | x <<= 5 | x = 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 را بر میگرداند.


