یبلاط یاه 1398 دنفسا -...
TRANSCRIPT
درس مبانی برنامه نویسی، پایتون6
هادی طالبی 1398اسفند
● return خود تابع است و آرگومان آن می تواند عبارت باشد
More about functions with return
تابع باال و پایین یکی معادل هستند ●
def area(radius): b = 3.14159 * radius**2 return (b)
def area(radius): return (3.14159 * radius * radius)
returnتابع با بیش از یک ●
More about functions with return
پایان تابع استاجرا شود returnهر جایی ●
def absolute_value(x): if x < 0: return -x else: return x
شود call، 0تابع زیر اگر با آرگومان ●
More about functions with return
اشکال تابع چیست؟. است ”None“پاسخ مقدار ویژه ●
def bad_absolute_value(x): if (x < 0): return (-x) elif (x > 0): return (x)
>>> print(bad_absolute_value(0)) None
با تایپ های متفاوت امکان دارد returnمقدار : در پایتون ●
More about functions with return
>>> def different_types1(x): if (x >= 0): return(x**0.5) # square root return(" Argument must not be Negative") >>> y = different_types1(10) >>> print(y) 3.1622776601683795 >>> y = different_types1(-10) >>> print(y) Argument must not be Negative >>>
بیش از یک مقدار امکان دارد با returnمقدار : در پایتون ●
More about functions with return
def get_secret_code(password): if(password != "democracy"): return( 0, "Wrong pass.“ ) else: return( 1, "Welcome” ) x = input("Please Enter Password: ") y, z = get_secret_code(x) if(y == 0): print(z, "Enter again") else: print(z, "Continue")
تکنیک هایی برای برنامه نویسی با هزینه کم ●
Program development
تکنیک هایی برای پیشگیری، کشف خطا ●
، جدا کن، پیروز شو، است divide and conquerهمان ●
Incremental development
برنامه را در نقاط مناسب نگه داشته و آزمایش کنید ●
حذف . اضافی printو returnمانند : ابزارهای آزمایش ● پس از آزمایش
نوشتن تابعی برای یافتن فاصله اقلیدسی دو نقطه: مثال ●
Incremental development
0فقط تست ساختار و سینتکس، در این گام، مقدار ● نشاندهنده درستی کار تا اینجا
def distance(x1, y1, x2, y2): return 0.0
شروع با ساختار ساده یک تابع، فقط تست ساختار و ● سینتکس، در این گام
>>> distance(1, 2, 4, 6) 0.0
افزودن برنامه در چند گام و تست در هر گام ●
Incremental development
:گام دیگر ●
def distance(x1, y1, x2, y2): dx = x2 - x1 dy = y2 - y1 return 0.0
def distance(x1, y1, x2, y2): dx = x2 - x1 dy = y2 - y1 dsquared = dx*dx + dy*dy return 0.0
:گام پایانی ●
Incremental development
def distance(x1, y1, x2, y2): dx = x2 - x1 dy = y2 - y1 dsquared = dx*dx + dy*dy result = dsquared**0.5 return result
استفاده زیاد و تو در توی تابع ها ●
Composition
استفاده از توابع می تواند برنامه نویسی را ساده تر کند ●
توابع تا حدی اجرای (.افزایش زمان اجرا)کند شدن برنامه : هزینه ● .برنامه را کند می کنند
تمرین
از کتاب را حل کنید 6.9تمرین های با شماره فرد بخش ●