إعلان
تعلم الآن

بايثون الدالة isinstance()

تعريفها

تستخدم لمعرفة ما إذا كان الكائن الذي نمرره مكان الباراميتر obj تم إنشاؤه من الكلاس الذي نمرره مكان الباراميتر classinfo أم لا.
ترجع True في حال كان كذلك, و غير ذلك ترجع False.

ملاحظة: في حال كان الكائن تم إنشاؤه بشكل مباشر أو غير مباشر من الكلاس فإنه يعتبر أنه منشئ منه.



بناؤها

isinstance(obj, classinfo)
	


بناؤها

  • مكان الباراميتر obj نمرر الكائن الذي نريد أن نعرف إذا كان تم إنشاؤه من الكلاس.
  • مكان الباراميتر classinfo نمرر إسم الكلاس الذي نريد أن نعرف إذا كان الكائن منشئاً منه.


قيمة الإرجاع

ترجع True في حال كان الكائن الذي نمرره مكان الباراميتر obj قد تم إنشاؤه بشكل مباشر أو غير مباشر من الكلاس الذي نمرره مكان الباراميتر classinfo.
غير ذلك ترجع False.



مثال

Test.py
# A هنا قمنا بتعريف كلاس فارغ إسمه
class A:
	pass


# B هنا قمنا بتعريف كلاس فارغ إسمه
class B():
	pass


# B و يرث من الكلاس C هنا قمنا بتعريف كلاس فارغ إسمه
class C(B):
	pass


# obj إسمه C هنا قمنا بإنشاء كائن من الكلاس
obj = C()

# تم إنشاؤه c عدة مرات لمعرفة من أي كلاسات يعتبر الكائن isinstance() هنا قمنا باستدعاء الدالة
print('Is obj instance of A:', isinstance(obj, A))
print('Is obj instance of B:', isinstance(obj, B))
print('Is obj instance of C:', isinstance(obj, C))
		

سنحصل على النتيجة التالية عند التشغيل.

Is obj instance of A: False
Is obj instance of B: True
Is obj instance of C: True
إعلان
دورة قواعد بيانات MySQL في هذه الدورة ستتعلم أساسيات قواعد البيانات و أوامر SQL، العلاقات (Join) بين الجداول، Normalization مع تطبيق مشروع متكامل. سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 600 ريال
سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 600 ريال
تعلم الآن

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة