issubclass() فحص وراثة الصنف

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

issubclass() فحص وراثة الصنف

issubclass(cls, classinfo) تتحقق مما إذا كان cls صنفًا فرعيًا من classinfo.

التصنيفالدوال المدمجة
النوعدالة مدمجة
إصدار بايثونall

📝 الصياغة

issubclass(class, classinfo)

⚙️ المعاملات

class مطلوبThe class to check.
classinfo مطلوبA class or tuple of classes; True if class is a subclass.

القيمة المُعادة:True if class is a subclass of classinfo (or any type in it).

💥 الاستثناءات

▶ مثال

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

المخرجات:

True
False
المزيد من الحالات قادم قريباً — تابعونا.

❓ أسئلة شائعة

Qما الفرق بين issubclass(B, A) و isinstance(b, A)؟
Aيقارن issubclass «صنفًا مع صنف» في علاقة الوراثة؛ بينما يقارن isinstance «مثيلًا مع صنف». بالنسبة إلى b = B()، يُرجع isinstance(b, A) القيمة True.
Qماذا تُرجع issubclass(A, A)؟
Aتُرجع True؛ كل صنف هو صنف فرعي من نفسه.
Qماذا يحدث إذا كانت الوسيطة الأولى مثيلًا؟
Aيُثار TypeError؛ تقبل issubclass الأصناف فقط — لفحص المثيلات استخدم isinstance.
Qكيف أفحص عدة آباء دفعة واحدة؟
Aمرّر صفًّا كوسيطة ثانية: issubclass(B, (A, C))، يكون True إذا كان B صنفًا فرعيًا لأي منها.
Web-Tutorial.com

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

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

100%