:= معامل الفظ (تعبير الإسناد)

آخر تحديث: 2026-09-22

:= معامل الفظ (تعبير الإسناد)

:= هو معامل الفظ الذي أُدخل في PEP 572، ويتيح الإسناد داخل تعبير وإرجاع القيمة。

التصنيفالعوامل
النوععامل
إصدار بايثون3.8+

📝 الصياغة

name := value

▶ مثال

عدّل الكود واضغط تشغيل لرؤية النتيجة في لوحة المخرجات:

المخرجات:

3.0
3.0
💡 تلميح := مناسب لإعادة استخدام الحسابات المكلفة في شروط if / while。
المزيد من الحالات قادم قريباً — تابعونا.

❓ أسئلة شائعة

Qما الفرق بين := و=?
A`:=` تعبير: يمكنه إسناد قيمة داخل حالة مثل `if` أو `while` مع إرجاع تلك القيمة أيضًا. بينما `=` عبارة ولا تظهر في موضع تعبير. `if (x = 5):` خطأ نحوي، بينما `if (x := 5):` صالحة.
Qما إصدار بايثون الذي يتطلبه `:=`؟
Aبايثون 3.8+ (PEP 572). على 3.7 فما دون يُحدث `SyntaxError: invalid syntax`.
Qما الاستخدام الكلاسيكي لـ `:=`؟
Aالقراءة-ثم-الاختبار في حلقة `while`: `while (line := f.readline()):` يعالج كل سطر؛ أو إعادة استخدام حساب مكلف في حالة: `if (root := math.sqrt(x)) > 2:` يستخدم `root` مباشرةً.
Qمتى يجب ألا تستخدم `:=`؟
Aتجنّبه كلما استطعت. الإسناد العادي أوضح في معظم السيناريوهات؛ الإفراط في استخدام عامل حصان البحر يضر بسهولة القراءة. يقترح PEP 572 استخدامه فقط لتجنب الحساب المتكرر ولجعل المنطق أكثر اختصارًا.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%