ahmed1990 نشر 21 سبتمبر 2015 أرسل تقرير نشر 21 سبتمبر 2015 هل يمكن تحديد نوع الكائن في البايثون ؟ أي أن أكتب شيفرة لتعطيني نوع هذا الكائن سؤال كان قائمة، سلسلة نصية … اقتباس
0 هشام رزق الله نشر 21 سبتمبر 2015 أرسل تقرير نشر 21 سبتمبر 2015 (معدل) للحصول على نوع الكائن يمكنك استخدام دالة type() المدمجة (أي الموجود في البايثون بشكل افتراضي)، فيكفي أن تقوم بتمرير كائن كمعامل وحيد وسوف تقوم هذه الدالة بإرجاع نوع الكائن، كما في المثال التالي:>>> type([]) is list True >>> type({}) is dict True >>> type('') is str True >>> type(0) is int True >>> type({}) <type 'dict'> >>> type([]) <type 'list'> كما يمكنك أيضا استخدام دالة isinstance وهذه الدالة مدمجة أيضا في البايثون، وتفيد خاصة في حالات الكشف عن أنواع الدالات الموروثة كما في المثال التالي:>>> class Test1 (object): pass >>> class Test2 (Test1): pass >>> a = Test1() >>> b = Test2() >>> type(a) is Test1 True >>> type(b) is Test2 True >>> isinstance(b, Test1) True >>> isinstance(b, Test2) True >>> isinstance(a, Test1) True >>> isinstance(a, Test2) False >>> isinstance([], list) True >>> isinstance({}, dict) Trueكما أن المعامل الثاني لدالة isinstance() تقبل مجموعة من الأنواع على شكل tuple، فإذا أردت مثلا التأكد من مجموع أنواع في المرة الواحد، فستقوم isinstance() بإرجاع true إذا كان الكائن أحد هذه الأنواع:>>> isinstance([], (tuple, list, set)) Trueالمصادر: 1 2 تم التعديل في 21 سبتمبر 2015 بواسطة هشام رزق الله اقتباس
السؤال
ahmed1990
هل يمكن تحديد نوع الكائن في البايثون ؟ أي أن أكتب شيفرة لتعطيني نوع هذا الكائن سؤال كان قائمة، سلسلة نصية …
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.