اگر کاربر جدید هستید ثبت نام کنید
برنامه نویسی

Function – توابع در پایتون

امتیاز کاربران

ستاره فعالستاره فعالستاره فعالستاره فعالستاره فعال
 

در پایتون ۳ همه چیز شیء است. Function ها هم در پایتون شیء هستند.توابع در پایتون جزء First Class Citizens هستند یعنی به صورت داینامیک می توان آن ها را ساخت ، نابود کردو یا به عنوان ورودی به تابع دیگر داد و یا return کرد.

چرا از توابع استفاده می کنیم؟

 

زمانی که نیاز داریم تا از یک بلوک کد چندین بار استفاده کنیم می توانیم آن بلوک را به یک Function نسبت دهیم و با فراخوانی تابع تمام دستورات آن بلوک را اجرا کنیم بدون آنکه نیاز به تکرار و بازنویسی کدها داشته باشیم به علاوه اگر زمانی بخواهیم بخشی از دستورات آن بلوک کد را تغییر دهیم به جای آنکه چندین بار این کار را انجام دهیم ، تنها در Function تعریف شده ، تغییرات را اعمال می کنیم.

دقت داشته باشید که بر خلاف بسیاری از زبان های برنامه نویسی مثل JAVA که برای بلوک بندی کدها از {} استفاده می شود در پایتون از تو رفتگی استفاده می کنیم. مفسر پایتون تنها دستوراتی را به عنوان کدهای بدنه Function می پذیرد که نسبت به بخش اصلی تورفته باشد و در صورت عدم رعایت تورفتگی بدنه تابع ناقص خواهد بود و با فراخوانی تابع دستورات مورد نظر اجرا نخواهد شد.

برای ایجاد توابع از Def استفاده می کنیم.معمولاً نام توابع با حروف کوچک است و در بین نام از _ استفاده می کنیم.

مثال Function

[code]
:(Def foo(x<<<
y=x**2
(print(y
(foo(7<<<
۴۹
 
[/code]
 
 

 در حقیقت شناسه ای که با Def به تابع نسبت می دهیم مانند یک متغییر است.

کلمه Def نیز دز اینجا مانند عملگر = برای انتساب Function به این متغیر عمل می کند بنابراین می توان هر متغیر دیگری را نیز به یک Function نسبت داد

[code]
:()Def foo<<<
('print('test

foo<<<
<function foo at 0x03B307CB>
 
[/code]
 
 
 

محل قرارگیری در حافظه را می آورد.

 
[code]
 
()Foo<<<
test
Boo=foo<<<
Boo<<<
<function foo at 0x03B307CB>
[/code]
 
 
 

 

می بینیم همان محل را نشان می دهد.

اطلاعات تماس

در صورت بروزمشکل می توانیدبه ایمیل زیرپیام ارسال کنیدinfo@hellodigi.ir

ساماندهی

logo-samandehi

درباره سلام دیجی

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

تمام حقوق سایت برای سلام دیجی و نويسندگان آن محفوظ می باشد