الدالة issubclass()‎ في بايثون

من موسوعة حسوب
مراجعة 13:30، 5 مايو 2018 بواسطة عبد-الهادي-الديوري (نقاش | مساهمات) (إضافة الصّفحة)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تعيد الدّالة isinstance()‎ قيمة منطقيّةً تُشير إلى ما إذا كان الكائن المُعطى نسخة (instance) من الصّنف المُعطى أو لا.

البنية العامة

issubclass(class, classinfo)

المعاملات

class

الصّنف المرغوب التّحقّق من كونه فرعًا من الصّنف classinfo المُعطى.

classinfo

الصّنف أو النّوع المرغوب التّحقق من أنّ الصّنف class فرعٌ منه. يُمكن كذلك أن يكون صفًّا من الأصناف أو الأنواع للتحقّق من أنّ الكائن فرعٌ من أحدها.

القيمة المعادة

  • القيمة True إن كان الصّنفُ class صنفًا فرعيًّا من الصّنف classinfo (سواء كان مُباشرًا، غير مباشر، أو وهميًّا). والقيمة False إن لم يكن كذلك. ويُطلق استثناء TypeError في غير ذلك من حالات.

أمثلة

المثال التّالي يوضّح كيفيّة عمل هذه الدّالة:

>>> class A:
...     pass
... 
>>> class B:
...     pass
... 
>>> issubclass(A, B) # الصنف الأول ليس فرعًا للصّنف الثّاني
False
>>> class C(A): # صنف يرث من الصّنف الأول
...     pass
... 
>>> issubclass(C, A)
True

انظر أيضًا

مصادر