هل يمكن للفصل أن يعيد قيمة بيثون؟
هل يمكن للفصل أن يعيد قيمة بيثون؟

فيديو: هل يمكن للفصل أن يعيد قيمة بيثون؟

فيديو: هل يمكن للفصل أن يعيد قيمة بيثون؟
فيديو: #python مشروع بايثون#برمجة #عبدالله-اسكوت # تصميم #بايثون 2024, أبريل
Anonim

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

وبالمثل ، قد تسأل ، هل يمكن للمُنشئ إرجاع قيمة في بايثون؟

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

بجانب ما سبق ، هل يمكن للدالة إرجاع فئة؟ اذا كان طريقة أو إرجاع الدالة كائن من صف دراسي التي لا يوجد لها مُنشئ نسخ عام ، مثل ostream صف دراسي ، يجب إرجاع إشارة إلى كائن. بعض الطرق و المهام ، مثل عامل التخصيص المثقل ، يمكن أن يعود إما كائن أو إشارة إلى كائن.

بعد ذلك ، السؤال هو ، هل يمكن _ init _ إرجاع القيمة؟

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

كيف تعيد كائنًا في بايثون؟

ال إرجاع البيان يجعل أ الثعبان وظيفة للخروج وإعادة قيمة إلى المتصل بها. الهدف من الوظائف بشكل عام هو أن تأخذ في المدخلات و إرجاع شيئا ما. أ إرجاع العبارة ، بمجرد تنفيذها ، توقف على الفور تنفيذ الوظيفة ، حتى لو لم تكن آخر جملة في الوظيفة.

موصى به: