Define Function¶
Function Arguments¶
By default, arguments are assigned to function left to right
In [77]:
def myfun(x,y):
print ('x:',x)
print ('y:',y)
myfun(5,8)
x: 5 y: 8
However, you can also specify the argument assigment during function call
In [78]:
myfun (y=8,x=5)
x: 5 y: 8
Function can have default argement value
In [79]:
def myfun(x=1,y=1): # default argument value is 1
print ('x:',x)
print ('y:',y)
myfun(5) # pass only one argument
x: 5 y: 1
Return Statement¶
In [80]:
def bigger(x,y):
if (x>y):
return x
else:
return y
print (bigger(5,8))
8
No Return Statement¶
if no return statement, python return None
In [81]:
def dummy():
print ('This is a dummy function, return no value')
print (dummy())
This is a dummy function, return no value None
Return Multiple Value¶
Multiple value is returned as tuple. Use multiple assignment to assign to multiple variable
In [82]:
def minmax(x,y,z):
return min(x,y,z), max(x,y,z)
a,b = minmax(7,8,9) # multiple assignment
c = minmax(7,8,9) # tuple
print (a,b)
print (c)
7 9 (7, 9)
Passing Function as Argument¶
You can pass a function name as an argument to a function
In [83]:
def myfun(x,y,f):
f(x,y)
myfun('hello',54,print)
hello 54