فراخوانی تابع در پایتون

پایتون آریا پروژه

فراخوانی تابع در پایتون

فراخوانی تابع در پایتون

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

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

مثال زیر تابع printme() را صدا می زند:

#!/usr/bin/python

# Function definition is here

def printme( str ):

 “This prints a passed string into this function”

 print str

 return;

# Now you can call printme function

printme(“I’m first call to user defined function!”)

printme(“Again second call to the same function”)

نتیجه ی زیر حاصل می گردد:

I’m first call to user defined function!

Again second call to the same function

ارسال پارامتر با reference در برابر ارسال با مقدار در پایتون

تمامی پارامترها (آرگومان ها) در زبان پایتون با reference پاس داده می شوند.

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

#!/usr/bin/python

# Function definition is here

def changeme( mylist ):

 “This changes a passed list into this function”

 mylist.append([1,2,3,4]);

 print “Values inside the function: “, mylist

 return

# Now you can call changeme function

mylist = [10,20,30];

changeme( mylist );

print “Values outside the function: “, mylist

در اینجا reference به شی ارسالی حفظ شده و مقادیر جدید را به همان شی الصاق می کنیم.

نتیجه:

Values inside the function: [10, 20, 30, [1, 2, 3, 4]]

Values outside the function: [10, 20, 30, [1, 2, 3, 4]]

یک مثال دیگر را در زیر مشاهده می کنید که آرگومان با reference ارسال شده و reference مورد نظر در تابع فراخوانده شده، بازنویسی overwrite ))شده است.

#!/usr/bin/python

# Function definition is here

def changeme( mylist ):

 “This changes a passed list into this function”

 mylist = [1,2,3,4]; # This would assig new reference in mylist

 print “Values inside the function: “, mylist

 return

# Now you can call changeme function

mylist = [10,20,30];

changeme( mylist );

print “Values outside the function: “, mylist

نویسنده : زهرا رستمی

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *