ما هو Isinstance في Python وكيف يتم تنفيذه؟



ستقدم لك هذه المقالة طريقة Isinstance في Python وتعطيك شرحًا مفاهيميًا شاملاً مع العرض التوضيحي.

هي واحدة من أقوى لغات البرمجة المتوفرة في السوق اليوم. تدعم Python أيضًا تنفيذ لغات البرمجة الأخرى داخل نظامها البيئي مثل Java و C وكذلك C ++. من بين العديد من الوحدات والوظائف المتوفرة في نظام Python البيئي ، فإن أحد هذه الوحدات التي تبرز من بين البقية هو النظرة في Python. وبالتالي في هذه المقالة سوف نتحدث بالتفصيل عن الحالة واستخداماتها والميزات التي تجلبها إلى الجدول.

سيتم تغطية المؤشرات التالية في هذه المقالة ،





هيا نبدأ!

ما هو Isinstance في بايثون؟

يتم استخدام Python isinstance للتحقق مما إذا كان الكائن الأول الذي يمثل الوسيطة هو مثيل أو فئة فرعية من فئة classinfo التي تمثل الوسيطة الثانية.



بناء الجملة لـ isinstance في Python هو كما يلي.

isinstance (كائن ، classinfo)

دعونا نرى ما هي المعلمات وقيمة الإرجاع التي تمتلكها Isinstance في Python ،



المعلمة وقيمة العائد من Isinstance

معامل

الآن بعد أن أصبحت على دراية بصيغة isinstance ، دعنا نلقي نظرة فاحصة على المعلمات التي تأخذها في الاعتبار.

  1. الكائن: هذا هو الكائن الذي يجب التحقق منه.
  2. Classinfo: هذه الفئة أو المعلومات أو مجموعة الفئات التي يحتاج الكائن إلى التحقق منها.

قيمة الإرجاع

عند استخدام isinstance في أحد البرامج ، تعتمد القيمة المعادة على عدد من الشروط ، كما هو موضح في المؤشرات أدناه.

  1. يتم إرجاع True إذا كان الكائن فئة فرعية من classinfo أو tuple of classes.
  2. يتم إرجاع False إذا لم يكن الكائن فئة فرعية من classinfo أو مجموعة الفئات.

إذا لم يكن classinfo في موقف معين نوعًا أو مجموعة من الأنواع ، فسيتم إظهار استثناء خطأ النوع على شاشة المستخدم.

أمثلة

لفهم استخدام isinstance بشكل أفضل ، دعونا نلقي نظرة على بعض الأمثلة.

مثال 1

class Foo: a = 5 fooInstance = Foo () print (isinstance (fooInstance، Foo)) print (isinstance (fooInstance، (list، tuple))) print (isinstance (fooInstance، (list، tuple، Foo)))

انتاج |

صحيح

خاطئة

قائمة أحداث جافا سكريبت مع أمثلة

صحيح

Isinstance في Python: مثال رقم 2

تحويل المضاعفة إلى int java
الأرقام = [1 ، 2 ، 3] نتيجة = isinstance (أرقام ، قائمة) طباعة (أرقام ، 'مثيل من القائمة؟' ، نتيجة) نتيجة = isinstance (أرقام ، ديكت) طباعة (أرقام ، 'مثيل للديكت؟' ، نتيجة ) نتيجة = isinstance (أرقام ، (ديكت ، قائمة)) طباعة (أرقام ، 'مثيل من القائمة أو القائمة؟' ، النتيجة) الرقم = 5 نتيجة = رقم ، قائمة) طباعة (رقم ، 'مثيل القائمة؟' ، النتيجة) نتيجة = isinstance (رقم ، عدد صحيح) طباعة (رقم ، 'مثيل int؟' ، نتيجة)

انتاج |

[1 ، 2 ، 3] مثيل من القائمة؟ صحيح

[1 ، 2 ، 3] مثيل dict؟ خاطئة

[1 ، 2 ، 3] مثيل من dict أو قائمة؟ صحيح

5 مثيل من القائمة؟ خاطئة

5 مثيل كثافة العمليات؟ صحيح

المثال رقم 3

# Python code for isinstance () class Test: a = 5 TestInstance = Test () print (isinstance (TestInstance، Test)) print (isinstance (TestInstance، (list، tuple))) print (isinstance (TestInstance، (list، tuple ، اختبار)))

انتاج |

صحيح

خاطئة

صحيح

دعنا نتابع مقالة 'Isinstance In Python' ونفهم استخدام طريقة الكتابة ،

استخدام الكتابة في بايثون

على غرار isinstance ، هناك طريقة أخرى مضمنة في Python تُستخدم للتحقق من متغير النوع pf الذي يتم استخدامه أثناء وقت التشغيل. إذا تم تمرير وسيطة أو كائن واحد من خلال أسلوب النوع ، فإنه يقوم بإرجاع نوع الكائن الذي يتم استخدامه أثناء وقت التشغيل.

لفهم هذا بشكل أفضل ، ألق نظرة على المثال أدناه.

Isinstance في Python: مثال # 1.1

# نوع كود Python () بمعامل كائن واحد x = 5 s = 'sampleoutput' y = [1،2،3] طباعة (نوع (x)) طباعة (نوع (أنواع)) طباعة (اكتب (y))

انتاج |

فئة 'int'

فئة 'شارع'

قائمة الطبقة'

المثال رقم 1.2

# كود Python للنوع () مع اسم ، # قواعد ومعامل دكت o1 = النوع ('X' ، (كائن ،) ، دكت (أ = 'Foo' ، ب = 12)) طباعة (اكتب (o1)) طباعة (vars (o1)) class test: a = 'Foo' b = 12 o2 = type ('Y'، (test،) ،ict (a = 'Foo'، b = 12)) print (type (o2)) طباعة (فارز (o2))

انتاج |

{'b': 12، 'a': 'Foo'، '__dict__':، '__doc__': لا شيء ، '__weakref__':}

{'ب': 12 ، 'أ': 'فو' ، '__doc__': لا شيء}

دعونا نقارن النوع و Isinstance في Python ،

الفرق بين النوع () و Isinstance

تخدم الكتابة والموازنة في Python وظيفتين مختلفتين تمامًا. ألق نظرة على المؤشرات أدناه لفهم الفرق بينهما بشكل أفضل.

كيفية استخدام بيثون أناكوندا
  1. إذا كنت بحاجة إلى التحقق مما إذا كان الكائن له نوع معين ، فمن الأفضل استخدام isinstance. هذا لأن isinstance سيكون قادرًا على التحقق مما إذا كان الكائن الذي تم تمريره في الوسيطة الأولى من نفس النوع الذي تم تمريره في الوسيطة الثانية.
  2. من ناحية أخرى ، يُفضل استخدام النوع عندما تحتاج ببساطة إلى التحقق من نوع كائن معين وليس مقارنته بآخر.

مثال

#Python code لتوضيح فئة كتابة البط مستخدم (كائن): def __init __ (self ، firstname): self.firstname = firstnameproperty def name (self): return self.firstname class Animal (object): pass class Fox (Animal) : name = 'Fox' class Bear (Animal): name = 'Bear' # استخدم سمة (أو خاصية) .name بغض النظر عن نوع في [User ('SampleOutput') ، Fox () ، Bear ()] : print (a.name)

انتاج |

عينة إخراج

فوكس

يتحمل

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

#python code لتوضيح عدم وجود # دعم للوراثة في فئة النوع () MyDict (ديكت): '' 'ديكت عادي ، يتم إنشاؤه دائمًا باستخدام مفتاح' أولي '' '' def __init __ (self): self [ 'الأولي'] = 'بعض البيانات' د = MyDict () طباعة (اكتب (د) == ديكت) طباعة (اكتب (د) == MyDict) د = ديكت () طباعة (اكتب (د) == ديكت) طباعة (اكتب (د) == MyDict)

انتاج |

خاطئة

صحيح

صحيح

خاطئة

إذن هذا كل شيء يا رفاق ، هذا يقودنا إلى نهاية هذا المقال. أتمنى أن تكون قد فهمت Isinstance في Python وماذا تفعل.

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

لديك سؤال لنا؟ أذكرها في قسم التعليقات في هذه المقالة وسنعاود الاتصال بك.