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

من موسوعة حسوب

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

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

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

انظر أيضًا

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

مصادر