آیا یک کلاس می تواند ارزش پایتون را برگرداند؟
آیا یک کلاس می تواند ارزش پایتون را برگرداند؟

تصویری: آیا یک کلاس می تواند ارزش پایتون را برگرداند؟

تصویری: آیا یک کلاس می تواند ارزش پایتون را برگرداند؟
تصویری: کدوم رشته سخت تره😂🤦‍♂️ 2024, نوامبر
Anonim

آ ارزش چیزی متفاوت از یک شی در آن نیست پایتون . وقتی به یک زنگ میزنید کلاس شی (مانند MyClass() یا list())، آن را برمی گرداند یک نمونه از آن کلاس . وقتی یک شی را چاپ می کنید (یعنی نمایش رشته ای از یک شی را دریافت می کنید)، متد جادویی _str_ یا _repr_ آن شی فراخوانی می شود و ارزش برگشتی چاپ شده.

به طور مشابه، ممکن است بپرسید، آیا سازنده می تواند مقداری را در پایتون برگرداند؟

پایتون انتظار دارد سازنده به برگشت هیچ کدام و در صورت شکست شکست می خورد برمی گرداند چیز دیگری مد نظر دارید. در اسمال تاک، new یک کلمه کلیدی نیست. این پیامی است که شما به یک کلاس (که خود یک شی است) ارسال می کنید. متد جدید کلاس یک شی و ایجاد می کند برمی گرداند آی تی.

علاوه بر بالا، آیا یک تابع می تواند یک کلاس را برگرداند؟ اگر یک روش یا تابع برمی گردد یک شی از a کلاس که هیچ سازنده کپی عمومی مانند ostream وجود ندارد کلاس ، آن باید برگشت اشاره به یک شی برخی از روش ها و کارکرد مانند اپراتور تخصیص بیش از حد، می تواند برگردد یا یک شی یا اشاره به یک شی.

پس از آن، سوال این است که آیا _ می تواند مقدار _ را برگرداند؟

_ابتدا_ روش برمی گرداند آ ارزش این _ابتدا_ متد یک کلاس برای مقداردهی اولیه اشیاء جدید، نه ایجاد آنها. به این ترتیب، نباید برگشت هر ارزش . عودت هیچ کدام از این نظر درست نیست که خطای زمان اجرا وجود ندارد اراده رخ می دهد، اما نشان می دهد که ارزش برگشتی معنی دار است، که اینطور نیست.

چگونه یک شی را در پایتون برگردانید؟

این برگشت بیانیه ای می سازد پایتون تابعی برای خروج و بازگرداندن یک مقدار به تماس گیرنده آن. هدف توابع به طور کلی دریافت ورودی و برگشت چیزی آ برگشت دستور، پس از اجرا، بلافاصله اجرای یک تابع را متوقف می کند، حتی اگر آخرین دستور در تابع نباشد.

توصیه شده: