Home »
Python
Python | Types of function calling with Examples
Python function calling types: Here, we are going to learn about function calling types in python with Examples.
Submitted by Pankaj Singh, on October 11, 2018
There are following types of function calls in python:
- Call by value
- Call by reference
1) Call by value
When, we call a function with the values i.e. pass the variables (not their references), the values of the passing arguments cannot be changes inside the function.
# call by value
def change(data):
data=45
print("Inside Function :",data)
def main():
data=20
print("Before Calling :",data)
change(data)
print("After Calling :", data)
if __name__=="__main__":main()
Output
Before Calling : 20
Inside Function : 45
After Calling : 20
2) Call by reference
When, we call a function with the reference/object, the values of the passing arguments can be changes inside the function.
Example 1: Calling function by passing the object to the class
class mydata:
def __init__(self):
self.__data=0
def setdata(self,value):
self.__data=value
def getdata(self):
return self.__data
def change(data):
data.setdata(45)
print("Inside Function :",data.getdata())
def main():
data=mydata()
data.setdata(20)
print("Before Calling :",data.getdata())
change(data)
print("After Calling :", data.getdata())
if __name__=="__main__":main()
Output
Before Calling : 20
Inside Function : 45
After Calling : 45
Example 2: Calling function by passing the reference to the list
def change(data):
data[1]=25
print("Inside Function :",data)
def main():
data=[10,20,30,40,50]
print("Before Calling :",data)
change(data)
print("After Calling :", data)
if __name__=="__main__":main()
Output
Before Calling : [10, 20, 30, 40, 50]
Inside Function : [10, 25, 30, 40, 50]
After Calling : [10, 25, 30, 40, 50]
Python Tutorial
ADVERTISEMENT
ADVERTISEMENT