logo

بايثون هو مثيل () وظيفة

يتم استخدام وظيفة Python isinstance() للتحقق مما إذا كان الكائن المحدد هو مثيل لتلك الفئة. إذا كان الكائن ينتمي إلى الفئة، فإنه يُرجع True. وإلا ترجع خطأ. كما أنه يُرجع صحيحًا إذا كانت الفئة فئة فرعية.

تأخذ الدالة isinstance() كائنين من الوسيطات وclassinfo وترجع إما True أو False. ويرد أدناه توقيع الوظيفة.

بناء الجملة:

 isinstance(object, classinfo) 

حدود

هدف: إنه كائن من سلسلة أو int أو float أو طويل أو مخصص.

معلومات التصنيف: اسم الفئة.

يعود

تقوم بإرجاع منطقية إما True أو False.

دعونا نرى بعض الأمثلة على وظيفة isinstance() لفهم وظيفتها.

أمثلة على Python Isinstance():

نحن نستخدم الدالة isinstance() للتحقق مما إذا كانت المتغيرات المختلفة هي مثيلات لأنواع أو فئات البيانات المنفصلة الخاصة بها.

1. عدد صحيح

شفرة

جافا يلقي شار إلى السلسلة
 # Check if an integer is an int n = 100 print(isinstance(n, int)) 

انتاج:

 True 

2. تعويم

شفرة

 # Check if a float is a float pi = 3.14159 print(isinstance(pi, float)) 

انتاج:

 True 

3. السلسلة

شفرة

الكيان العلائقي
 # Check if a string is a string name = 'Johnny' print(isinstance(name, str)) 

انتاج:

 True 

4. القائمة

شفرة

 # Check if a list is a list colours = ['blue', 'black', 'brown'] print(isinstance(colours, list)) 

انتاج:

 True 

5. القاموس

شفرة

 # Check if a dictionary is a dict person = {'name': 'Ayan', 'age': 30} print(isinstance(person, dict)) 

انتاج:

 True 

6. الصفوف

شفرة

 # Check if a tuple is a tuple point = (1, 5) print(isinstance(point, tuple)) 

انتاج:

 True 

7. اضبط

شفرة

 # Check if a set is a set digits = {1, 2, 3, 4,5,6,7,8} print(isinstance(digits, set)) 

انتاج:

 True 

8. الطبقة

شفرة

 # Check if a custom class instance is an instance of that class class Bike: pass my_bike = Bike() print(isinstance(my_bike, Bike)) 

انتاج:

1 من 1000
 True 

دعونا نرى المزيد من الأمثلة على وظيفة isinstance() لفهم وظيفتها.

بايثون isinstance() مثال على الدالة 1

هنا، نقوم بتمرير الكائن والفئة إلى الدالة التي تُرجع True فقط إذا كان الكائن ينتمي إلى الفئة. انظر المثال أدناه.

شفرة

 # Python isinstance() function example class Student: id = 101 name = 'John' def __init__(self, id, name): self.id=id self.name=name student = Student(1010,'John') lst = [ 12,34,5,6,767 ] # Calling function print(isinstance(student, Student)) # isinstance of Student class print(isinstance(lst, Student)) 

انتاج:

 True False 

بايثون isinstance() مثال على الدالة 2

يمكن استخدام isinstance() للتحقق مما إذا كان الكائن هو مثيل لفئة تنفذ واجهة معينة. يمكننا وصف الواجهة بأنها فئة تحدد مجموعة من التقنيات التي تنفذها فئات مختلفة.

كومة جافا

شفرة

 # Python isinstance() function example class Animal: def speak(self): raise NotImplementedError class Dog(Animal): def speak(self): return 'Woof!' class Cat(Animal): def speak(self): return 'Meow!' def make_animal_speak(animal): if isinstance(animal, Animal): return animal.speak() else: raise ValueError('Object is not an Animal') my_dog = Dog() my_cat = Cat() print(make_animal_speak(my_dog)) print(make_animal_speak(my_cat)) 

انتاج:

 'Woof!' 'Meow!' 

بايثون isinstance() مثال على الوظيفة 3

تقوم هذه الدالة أيضًا بإرجاع True إذا كان الكائن من فئة فرعية والفئة هي فئة أصل. انظر كيف يعمل في المثال أدناه.

شفرة

 # Python isinstance() function example # Declaring variables class NumericList(list): def __init__(self): return None num = NumericList() # Calling function print(isinstance(num, NumericList)) # True print(isinstance(num, list)) # True 

انتاج:

 True True 

خاتمة:

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