تغییر دهنده ها در زبان پایتون کدامند ؟

1

تغییر دهنده ها در زبان پایتون کدامند ؟

کیانا ابراهیمی سوال پاسخ داده شده اکتبر 15, 2020
گذاشتن نظر
0

تغییر دهنده ها در زبان پایتون کدامند ؟

مواردي وجود داشت که تغییر یک یا چند شیء که به عنوان پارامتر بـه تـابع داده شـده بودنـد براي آن بسیار مفید بود. معمولاً فراخوانندة تابع آدرسی از اشیائی که به آن میفرستد را نگـه مـیدارد، بنابراین هر تغییراتی که تابع به وجود آورد از دید فراخوان قابل رؤیت است. توابعی که بـه ایـن صـورت کار میکنند تغییردهنده نامیده میشوند. تابع increment که تعداد معینی ثانیه را به شیء Time اضافه میکند، اگر به عنـوان یـک
تغییردهنده نوشته شود به طور طبیعیتري ظاهر میشود. پیشنویس موقتی از این تابع به این صـورت است:

def increment(time, seconds):
time.seconds = time.seconds + seconds
if time.seconds >= 60:
time.seconds = time.seconds – 60
time.minutes = time.minutes + 1
if time.minutes >= 60:
time.minutes = time.minutes – 60
time.hours = time.hours + 1

اولین خط عمل اصلی را انجام میدهد و بقیۀ خطوط مـوارد خاصـی را کـه قـبلاً بـا آن مواجـه شدهایم به کار میبرند. آیا این تابع درست است؟ اگر پارامتر seconds خیلی بـزرگتـر از شصـت باشـد چـه اتفـاقی میافتد؟ در این صورت انتقال یک رقم نقلی کافی نیست؛ ما مجبوریم این کار را تا آنجا که seconds از 60 کمتر شود انجام دهیم. یک راه حل براي استفاده از دستور while به جاي if است:

def increment(time, seconds):
time.seconds = time.seconds + seconds
while time.seconds >= 60:
time.seconds = time.seconds – 60
time.minutes = time.minutes + 1
while time.minutes >= 60:
time.minutes = time.minutes – 60
time.hours = time.hours + 1

حال این تابع درست است، اما مؤثرترین راه ممکن نیست.

برای اموزش های ویدیویی زبان پایتون به بستر ویدیو های اموزشی بروید

بستر اموزش های ویدویی 

کیانا ابراهیمی سوال پاسخ داده شده اکتبر 15, 2020
گذاشتن نظر
شما در حال مشاهده 1 از 1 پاسخ هستید ، برای دیدن همه پاسخها اینجا را کلیک کنید .
پاسخ خود را بنویسید .
  • فعال
  • بازدیدها1103 times
  • پاسخ ها1 پاسخ
ورود به متاورس | متاورس ایرانی
ورود به متاورس ایران یا همان متاورس ملی

علامت ذره بین Tutorials سمت راست به رنگ قرمز به شما کمک خواهد کرد .

جدید ترین سوالات پرسیده شده

منقضی شدن سم بتانال 1 پاسخ | 0 آرا
ایا ایدز گزفتم؟ 0 پاسخ ها | 0 آرا
انتخاب ورزش رزمی 0 پاسخ ها | 1 رای
وزارت تعاون کار و رفاه اجتماعی اسناد و املاک کشور مرکز آموزش ویدیویی انجمن پرسش و پاسخ فروشگاه ملی تولید کنندگان مدیریت بر مدیران حم رسانه ملی اخبار متا دانشگاه متاورس استخدام | دانش محور فروشگاه مجازی حم تبلیغات ملی بازار NFT متاورس رنگ نقشه ملی سه بعدی متا تونل زمان متاآرت وبرنگ خانه