📋 Table of Contents
إذا كنت قادمًا من لغات مثل C أو Java أو JavaScript، فقد تتساءل عما إذا كان Python يحتوي على عامل شرطي ثلاثي. الإجابة المختصرة هينعم، ولكنه يبدو مختلفًا قليلاً عما قد تتوقعه.
إذا كنت قادمًا من لغات مثل C أو Java أو JavaScript، فقد تتساءل عما إذا كان Python يحتوي على عامل شرطي ثلاثي. الإجابة المختصرة هي نعم، ولكنه يبدو مختلفًا قليلاً عما…
ما هو Ternary Operator؟
العامل الثلاثي هو طريقة موجزة لكتابة عبارات if-else البسيطة في سطر واحد. في العديد من اللغات، يتبع النمط:condition ? value_if_true : value_if_false.
بناء جملة Ternary Operator في Python

🎨 AI Generated: Python s Ternary Operator Syntax
يحتوي Python على ternary operator، لكنه يستخدم صيغة أكثر قابلية للقراءة تم تقديمها في Python 2.5 (PEP 308). الصيغة هي:
code
value_if_true if condition else value_if_false
لاحظ كيف أن إصدار Python يُقرأ بشكل أقرب إلى اللغة الإنجليزية الطبيعية مقارنة بـ ternary operator التقليدي بأسلوب C.
أمثلة أساسية
إليك مثال بسيط:
python
age = 20 status = adult if age = 18 else minor print(status) # الناتج: adult
هذا يعادل كتابة:
code
if age = 18: status = adult else: status = minor
حالات الاستخدام العملية

🎨 تم إنشاؤه بواسطة الذكاء الاصطناعي: حالات الاستخدام العملية
يكون العامل الثلاثي مفيداً بشكل خاص في:
1. إسناد المتغيرات
code
score = 85 grade = Pass if score = 60 else Fail
2. Function Arguments
python
def greet(name, formal=True): greeting = Good day if formal else Hey return f {greeting}, {name}!
3. List Comprehensions
code
numbers = [1, 2, 3, 4, 5] result = [ even if n % 2 == 0 else odd for n in numbers]
4. Return Statements
python
def get_discount(is_member): return 0.2 if is_member else 0.0
Ternary Operators المتداخلة
يمكنك تداخل ternary operators، ولكن كن حذرًا—يمكن أن تصبح صعبة القراءة بسرعة:
code
score = 75 grade = A if score = 90 else B if score = 80 else C if score = 70 else D
على الرغم من أن هذا يعمل، إلا أنه بالنسبة للشروط المعقدة، تكون بنية if-elif-else التقليدية أكثر وضوحاً.
Best Practices

🎨 AI Generated: Best Practices
استخدم ternary operators عندما:
- يكون الشرط بسيطاً وواضحاً
- يحسن من قابلية قراءة الكود
- تقوم بإسناد متغير بسيط
تجنب ternary operators عندما:
- يكون المنطق معقداً أو متداخلاً بشكل عميق
- يجعل الكود أصعب في الفهم
- تحتاج إلى تنفيذ عدة تعليمات برمجية
الأخطاء الشائعة
الخلط في الترتيب
تذكر أن بناء جملة Python يضع القيمة الصحيحة أولاً، على عكس ternary operators بأسلوب C:
code
# Python result = yes if condition else no # C/Java/JavaScript # result = condition ? yes : no
استخدام Tuples (Anti-pattern)
قبل Python 2.5، استخدم بعض المطورين tuple indexing كحل بديل:
code
# لا تفعل هذا! result = ( no , yes )[condition]
هذا النهج له مشاكل: يتم تقييم كلا القيمتين دائمًا، وهو يعمل فقط مع الشروط المنطقية. استخدم دائمًا ternary operator المناسب بدلاً من ذلك.
الخلاصة

🎨 AI Generated: الخلاصة
Python لديها بالفعل ternary conditional operator، وهي واحدة من الميزات الأكثر قابلية للقراءة في اللغة. بناء الجملةvalue_if_true if condition else value_if_falseبديهي ويتناسب بشكل جيد مع فلسفة Python في قابلية قراءة الكود. استخدمه للشروط البسيطة لجعل الكود الخاص بك أكثر إيجازًا، ولكن لا تضحي بالوضوح من أجل الإيجاز عند التعامل مع المنطق المعقد.
🚀 ابقَ في صدارة منحنى التكنولوجيا
احصل على رؤى تقنية يومية و reviews صادقة وأدلة عملية.
🔗 Share this article
✍️ Leave a Comment