الدرس الثالث: الدليل الموسوعي للعمليات الحسابية والمنطقية (Operators) في بايثون 2026
مرحباً بكم مجدداً في أكاديمية Spider Team التقنية. بعد أن أتقنا في الدروس السابقة كيفية إعداد البيئة وتخزين البيانات، نصل اليوم إلى المحطة الأكثر أهمية وتأثيراً في حياة أي مبرمج. إذا كانت البيانات هي الوقود، فإن العمليات (Operators) هي المحرك الذي يحول هذا الوقود إلى حركة وذكاء. في هذا الدرس، الذي صممناه ليكون المرجع الشامل والوافي، سنغوص في كافة أنواع العمليات التي تدعمها بايثون، من الحسابات البسيطة إلى المنطق المعقد الذي يبني خوارزميات الذكاء الاصطناعي في عام 2026. المبرمج الناجح لا يكتفي بمعرفة "كيف" يكتب الكود، بل يفهم "لماذا" تعمل العمليات بهذه الطريقة، وهو ما سنوضحه بالتفصيل هنا.
أولاً: العمليات الحسابية (Arithmetic Operators) - لغة الأرقام المعمقة
تعتبر العمليات الحسابية في بايثون هي الأساس لكل شيء، من تطبيق بسيط لحساب الخصومات إلى أنظمة الملاحة الفضائية. بايثون ليست مجرد آلة حاسبة، بل هي نظام معالجة رياضي فائق السرعة. إليك التفاصيل الدقيقة لكل عملية برمجية ستحتاجها في مشاريعك القادمة:
- الجمع (+) والطرح (-): يستخدمان للأرقام، ولكن تذكر أن الجمع يدمج النصوص (Strings) والقوائم (Lists) أيضاً، وهو ما يسمى بالدمج (Concatenation).
- الضرب (*): يستخدم لضرب الأرقام، وفي بايثون يمتلك ميزة فريدة؛ حيث يمكنك ضرب نص في رقم لتكراره (مثلاً: "Spider" * 2 تعطي "SpiderSpider").
- القسمة العادية ( / ): تعطي دائماً نتيجة عشرية (Float)، وهي ميزة تضمن دقة النتائج وتجنب المبرمج أخطاء تقريب الأرقام.
- القسمة الصحيحة ( // ): تسمى قسمة الأرض (Floor Division)، حيث تقوم بحذف الكسر تماماً وتعطيك الرقم الصحيح الناتج عن القسمة فقط.
- باقي القسمة ( % ): من أقوى العمليات في البرمجة؛ نستخدمها للتأكد من قابلية القسمة، وتحديد الأعداد الزوجية، وتوزيع البيانات في دورات برمجية.
- الأس ( ** ): لرفع القوى الحسابية، وهو أساس عمليات التشفير الرقمي والرياضيات المتقدمة.
|
# تطبيق حسابي موسوعي - Spider Team Academy a = 27 b = 5 print("الجمع:", a + b) # الناتج: 32 print("القسمة العادية:", a / b) # الناتج: 5.4 print("القسمة الصحيحة:", a // b) # الناتج: 5 print("باقي القسمة:", a % b) # الناتج: 2 print("عملية الأس:", 2 ** 10) # الناتج: 1024 |
ثانياً: عمليات المقارنة (Comparison Operators) - كيف يحلل البرنامج؟
في عام 2026، أصبحت المواقع والتطبيقات تعتمد على التخصيص اللحظي والذكاء التفاعلي. كيف يعرف النظام أنك تملك صلاحية الدخول؟ أو كيف تترتب الأسعار من الأرخص للأغلى؟ كل هذا يتم عبر عمليات المقارنة. هذه العمليات تقارن بين قيمتين وتخرج بنتيجة واحدة من اثنتين: **صح (True)** أو **خطأ (False)**. إليك القائمة الكاملة:
==: تعني "يساوي تماماً". نستخدمها لمطابقة كلمات المرور وأسماء المستخدمين.!=: تعني "لا يساوي". نستخدمها لاستثناء عناصر أو التحقق من تغير حالة معينة.>و<: أكبر من وأصغر من. أساس ترتيب البيانات والفلترة الرقمية.>=و<=: أكبر من أو يساوي / أصغر من أو يساوي. تُستخدم بكثرة في تحديد نطاقات الأعمار أو الرصيد المالي.
ثالثاً: العمليات المنطقية (Logical Operators) - جوهر التفكير البرمجي
الذكاء الاصطناعي ليس سوى سلسلة طويلة جداً من العمليات المنطقية المتداخلة. في بايثون، نستخدم الكلمات المنطقية لربط الشروط ببعضها البعض لخلق منطق معقد وذكي يوجه سلوك البرنامج:
- and: تتطلب أن يكون كل شيء صحيحاً (مثل: "يجب أن يكون لديك حساب و أن يكون رصيدك كافياً لإتمام العملية").
- or: تتطلب شرطاً واحداً على الأقل ليكون صحيحاً (مثل: "يمكنك الدفع عبر بطاقة الائتمان أو عبر المحفظة الرقمية").
- not: لعكس النتيجة الحالية، وهي مفيدة جداً في عمليات التحقق من الحالة السلبية.
|
age = 25 has_ticket = True is_blocked = False # منطق Spider Team المتقدم للتحقق من الصلاحيات can_enter = (age > 18 and has_ticket) and not is_blocked print("صلاحية الدخول:", can_enter) # الناتج: True |
رابعاً: أولوية العمليات (Operator Precedence)
عندما تجتمع عدة عمليات مختلفة في سطر واحد، بايثون لا تنفذها عشوائياً أو من اليمين لليسار فقط. هي تتبع ترتيباً صارماً يسمى PEMDAS لضمان استقرار النتائج الرياضية:
1. الأقواس ( ): لها السلطة العليا، أي شيء بين الأقواس يُنفذ أولاً مهما كان نوعه.
2. الأسس ** : القوى الحسابية تأتي ثانياً.
3. الضرب والقسمة * / // % : يتم تنفيذهما من اليسار إلى اليمين حسب الظهور.
4. الجمع والطرح + - : يتم تنفيذهما في النهاية من اليسار إلى اليمين.
خامساً: عمليات التخصيص المختصرة (Assignment Operators)
في مشاريع البرمجة الضخمة والحديثة، السرعة والنظافة في الكود هما المعيار. بدلاً من كتابة معادلات طويلة لتحديث قيمة متغير ما، نستخدم الاختصارات الذكية التي توفرها بايثون:
x += 5 بدلاً من