Chapter 01
Functions
New
syllabus
2024-25
Function Introduction
A function is a programming block of codes which
is used to perform a single, related task. It only runs
when it is called. We can pass data, known as
parameters, into a function. A function can return
data as a result.
We have already used some python built in
functions like print(), etc and functions defined in
module like math.pow(),etc. But we can also create
our own functions. These functions are called user-
defined functions.
Advantages of Using functions:
1. Program development made easy and fast : Work can be
divided among project members thus implementation can be
completed fast.
2. Program testing becomes easy : Easy to locate and isolate
a faulty function for further investigation
2. Code sharing becomes possible : A function may be used
later by many other programs this means that a python
programmer can use function written by others, instead of
starting over from scratch.
2. Code re-usability increases : A function can be used to keep
away from rewriting the same block of codes which we
are going use two or more locations in a program. This is
especially useful if the code involved is long or complicated.
Advantages of Using functions:
2. Increases program readability : The length of the
source program can be reduced by using/calling
functions at appropriate places so program become
more readable.
3. Function facilitates procedural abstraction : Once a
function is written, programmer would have to know to
invoke a function only ,not its coding.
4. Functions facilitate the factoring of code : A function
can be called in other function and so on…
Types of functions:
1.Built- in functions
2.Functions defined in module
3.User defined functions
1). Built-in Functions:
Functions which are already written or defined in python.
As these functions are already defined so we do not need
to define these functions. Below are some built-in
functions of Python.
Function name Description
len()
list()
max()
min()
open()
print()
str()
sum()
type()
tuple()
It returns the length of an object/value. It
returns a list.
It is used to return maximum value from a sequence (list,sets) etc.
It is used to return minimum value from a sequence (list,sets) etc.
It is used to open a file.
It is used to print statement.
It is used to return string object/value.
It is used to sum the values inside sequence. It
is used to return the type of object.
It is used to return a tuple.
2). Functions defined in module:
A module is a file consisting of Python code.
A module can define functions, classes and variables.
Save this code in a file named mymodule.py
def greeting(name):
print("Hello, " + name)
Import the module named mymodule, and call the greeting function:
import mymodule
mymodule.greeting(“India")
3). User defined function:
Functions that we define ourselves to do certain
specific task are referred as user-defined functions
because these are not already available.
Creating & calling a Function (user defined)
/Flow of execution
A function is defined using the
python. E.g. program is given below
.
def keyword in
def my_own_function():
print("Hello from a function")
#program start here.
print("hello before calling a function")
my_own_function() #function calling.now function codes will be executed
print("hello after calling a function")
Save the above source code in python file and execute it
#Function block/
definition/creation
Variable’s Scope in function
There are three types of variables with the view of scope.
1. Local variable – accessible only inside the functional block where it is declared.
2. Global variable – variable which is accessible among whole program using
global keyword.
3. Non local variable – accessible in nesting of functions,using nonlocal keyword.
Local variable program:
def fun():
s = "I love India!"
print(s)
s = "I love World!"
fun()
print(s)
Output:
I love India!
I love World!
Global variable program:
def fun():
global s #accessing/making global variable for fun()
print(s)
s = "I love India!“ #changing global variable’svalue
print(s)
s = "I love world!"
fun()
print(s)
Output:
I love world!
I love India!
I love India!
Guess me!
Guess me!
Variable’s Scope in function
#Find the output of below program
def fun(x, y):
global a
a = 10
x,y = y,x
b = 20
b = 30
c = 30
print(a,b,x,y)
a, b, x, y = 1, 2, 3,4
fun(50, 100)
print(a, b, x, y)
#Find the output of below program
def fun(x, y):
global a
a = 10
x,y = y,x
b = 20
b = 30
c = 30
print(a,b,x,y)
a, b, x, y = 1, 2, 3,4
fun(50, 100)
print(a, b, x, y)
Variable’s Scope in function
Variable’s Scope in function
Global variables in nested function
OUTPUT:
Before calling fun2 : 100
Inside fun2 x= 200
After calling fun2 : 100
x in main: 200
GuessMe!
Variable’s Scope in function
Non local variable
OUTPUT:
Inside fun2 x= 200
Before calling fun2: 100
After calling fun2: 200
x in main: 50
GuessMe!
Function
Parameters / Arguments Passing and return value
These are specified after the function name, inside the parentheses.
Multiple parameters are separated by comma.The following example has a
function with two parameters x and y
. When the function is called, we pass
two values, which is used inside the function to sum up the values and store
in z and then return the result(z):
def sum(x,y): #x, y are formal arguments
z=x+y
return z #return the value/result
x,y=4,5
r=sum(x,y) #x, y are actual arguments
print(r)
Note :- 1. Function Prototype is declaration of function with
name, argument and return type.
2. A formal parameter, i.e. a parameter, is in the function
definition. An actual parameter, i.e. an argument, is in a
function call.
Function
Function Arguments
Functions can becalled using following types of formal arguments −
• Required arguments/Positional parameter - arguments passed in correct positional order
• Keyword arguments - the caller identifies the arguments by the parameter name
• Default arguments - that assumes a default value if a value is not provided to argu.
• Variable-length arguments – pass multiple values with single argument name.
#Required arguments
def square(x):
z=x*x
return z
r=square()
print(r)
#In above function square() we have to
definitely need to pass some value to
argument x.
#Keyword arguments
def fun( name, age ):
"This prints a passed info into this
function"
print ("Name: ", name)
print ("Age ", age)
return;
# Now you can call printinfo function
fun( age=15, name="mohak" )
# value 15 and mohak is being passed to
relevant argument based on keyword
used for them.
Function
#Default arguments /
#Default Parameter
def sum(x=3,y=4):
z=x+y
return z
r=sum()
print(r)
r=sum(x=4)
print(r)
r=sum(y=45)
print(r)
#default value of x and y is being
used when it is not passed
#Variable length arguments
def sum( *vartuple ):
s=0
for var in vartuple:
s=s+int(var)
return s;
r=sum( 70, 60, 50 )
print(r)
r=sum(4,5)
print(r)
#now the above function sum() can
sum n number of values
Lamda
Python Lambda
A lambda function is a small anonymous function which can
take any number of arguments, but can only have one
expression. helpful when you want to pass a function as an
argument
Syntax : lambda arguments: expression
E.g.
x = lambda a, b : a * b
print(x(5, 6))
OUTPUT:
30
Mutable/immutable
properties
of data objects w/r function
Everything in Python is an object,and every objects in Python
can be either mutable or immutable.
Since everything in Python is an Object, every variable
holds an object instance. When an object is initiated, it is
assigned a unique object id. Its type is defined at runtime
and once set can never change, however its state can be
changed if it is mutable.
Means a mutable object can be changed after it is created,
and an immutable object can’t.
Mutable objects: list, dict, set, byte array
Immutable objects: int, f loat, complex,
frozen set ,bytes
string, tuple,
Mutable/immutable properties
of data objects w/r function
How objects are passed to Functions
#Pass by reference
def updateList(list1):
print(id(list1))
list1 += [10]
print(id(list1))
n = [50, 60]
print(id(n))
updateList(n)
print(n)
print(id(n))
OUTPUT
34122928
34122928
34122928
[50, 60, 10]
34122928
#In above function list1 an object is being passed
and its contents are changing because it is mutable
that’s why it is behaving like pass by reference
Visit : python.mykvs.in for regular updates
#Pass by value
def updateNumber(n):
print(id(n))
n += 10
print(id(n))
b = 5
print(id(b))
updateNumber(b)
print(b)
print(id(b))
OUTPUT
1691040064
1691040064
1691040224
5
1691040064
#In above function value of variable b is not
being changed because it is immutable that’s
why it is behaving like pass by value
Functions using
libraries
Mathematical functions:
Mathematical functions are available under math module.To
use mathematical functions under this module, we have to
import the module using import math.
For e.g.
To use sqrt() function we have to write statements like given
below
.
import math
r=math.sqrt(4)
print(r)
OUTPUT :
2.0
Visit : python.mykvs.in for regular updates
Functions using libraries
Functions available in Python Math Module
Visit : python.mykvs.in for regular updates
Functions using libraries
(System defined function)
String functions:
String functions are available in python standard module.These
are always availble to use.
For e.g. capitalize() function Converts the first character of
string to upper case.
s="i love programming"
r=s.capitalize()
print(r)
OUTPUT:
I love programming
Visit : python.mykvs.in for regular updates
Functions using libraries
String functions:
Visit : python.mykvs.in for regular updates
Method Description
capitalize()
casefold()
center()
count()
encode()
endswith()
find()
format()
index()
Converts the first character to upper case
Converts string into lower case
Returns a centered string
Returns the number of times a specified value occurs in a string
Returns an encoded version of the string
Returns true if the string ends with the specified value
Searches the string for a specified value and returns the position of
where it was found
Formats specified values in a string
Searches the string for a specified value and returns the position of
where it was found
Functions using libraries
String functions:
Visit : python.mykvs.in for regular updates
Method Description
isalnum()
isalpha()
isdecimal()
isdigit()
isidentifier()
islower()
isnumeric()
isprintable()
isspace()
istitle()
isupper()
join()
ljust()
lower()
lstrip()
partition()
Returns True if all characters in the string are alphanumeric
Returns True if all characters in the string are in the alphabet
Returns True if all characters in the string are decimals
Returns True if all characters in the string are digits
Returns True if the string is an identifier
Returns True if all characters in the string are lower case
Returns True if all characters in the string are numeric
Returns True if all characters in the string are printable
Returns True if all characters in the string are whitespaces
Returns True if the string follows the rules of a title
Returns True if all characters in the string are upper case
Joins the elements of an iterable to the end of the string
Returns a left justified version of the string
Converts a string into lower case
Returns a left trim version of the string
Returns a tuple where the string is parted into three parts
Functions using libraries
String functions:
Visit : python.mykvs.in for regular updates
Method Description
replace()
split()
splitlines()
startswith()
swapcase()
title()
translate()
upper()
zfill()
Returns a string where a specified value is replaced with a specified
value
Splits the string at the specified separator, and returns a list
Splits the string at line breaks and returns a list
Returns true if the string starts with the specified value
Swaps cases, lower case becomes upper case and vice versa
Converts the first character of each word to upper case
Returns a translated string
Converts a string into upper case
Fills the string with a specified number of 0 values at the beginning

CHAPTER 01 FUNCTION in python class 12th.pptx

  • 1.
  • 2.
    Function Introduction A functionis a programming block of codes which is used to perform a single, related task. It only runs when it is called. We can pass data, known as parameters, into a function. A function can return data as a result. We have already used some python built in functions like print(), etc and functions defined in module like math.pow(),etc. But we can also create our own functions. These functions are called user- defined functions.
  • 3.
    Advantages of Usingfunctions: 1. Program development made easy and fast : Work can be divided among project members thus implementation can be completed fast. 2. Program testing becomes easy : Easy to locate and isolate a faulty function for further investigation 2. Code sharing becomes possible : A function may be used later by many other programs this means that a python programmer can use function written by others, instead of starting over from scratch. 2. Code re-usability increases : A function can be used to keep away from rewriting the same block of codes which we are going use two or more locations in a program. This is especially useful if the code involved is long or complicated.
  • 4.
    Advantages of Usingfunctions: 2. Increases program readability : The length of the source program can be reduced by using/calling functions at appropriate places so program become more readable. 3. Function facilitates procedural abstraction : Once a function is written, programmer would have to know to invoke a function only ,not its coding. 4. Functions facilitate the factoring of code : A function can be called in other function and so on…
  • 5.
    Types of functions: 1.Built-in functions 2.Functions defined in module 3.User defined functions
  • 6.
    1). Built-in Functions: Functionswhich are already written or defined in python. As these functions are already defined so we do not need to define these functions. Below are some built-in functions of Python. Function name Description len() list() max() min() open() print() str() sum() type() tuple() It returns the length of an object/value. It returns a list. It is used to return maximum value from a sequence (list,sets) etc. It is used to return minimum value from a sequence (list,sets) etc. It is used to open a file. It is used to print statement. It is used to return string object/value. It is used to sum the values inside sequence. It is used to return the type of object. It is used to return a tuple.
  • 7.
    2). Functions definedin module: A module is a file consisting of Python code. A module can define functions, classes and variables. Save this code in a file named mymodule.py def greeting(name): print("Hello, " + name) Import the module named mymodule, and call the greeting function: import mymodule mymodule.greeting(“India")
  • 8.
    3). User definedfunction: Functions that we define ourselves to do certain specific task are referred as user-defined functions because these are not already available.
  • 9.
    Creating & callinga Function (user defined) /Flow of execution A function is defined using the python. E.g. program is given below . def keyword in def my_own_function(): print("Hello from a function") #program start here. print("hello before calling a function") my_own_function() #function calling.now function codes will be executed print("hello after calling a function") Save the above source code in python file and execute it #Function block/ definition/creation
  • 10.
    Variable’s Scope infunction There are three types of variables with the view of scope. 1. Local variable – accessible only inside the functional block where it is declared. 2. Global variable – variable which is accessible among whole program using global keyword. 3. Non local variable – accessible in nesting of functions,using nonlocal keyword. Local variable program: def fun(): s = "I love India!" print(s) s = "I love World!" fun() print(s) Output: I love India! I love World! Global variable program: def fun(): global s #accessing/making global variable for fun() print(s) s = "I love India!“ #changing global variable’svalue print(s) s = "I love world!" fun() print(s) Output: I love world! I love India! I love India! Guess me! Guess me!
  • 11.
    Variable’s Scope infunction #Find the output of below program def fun(x, y): global a a = 10 x,y = y,x b = 20 b = 30 c = 30 print(a,b,x,y) a, b, x, y = 1, 2, 3,4 fun(50, 100) print(a, b, x, y)
  • 12.
    #Find the outputof below program def fun(x, y): global a a = 10 x,y = y,x b = 20 b = 30 c = 30 print(a,b,x,y) a, b, x, y = 1, 2, 3,4 fun(50, 100) print(a, b, x, y) Variable’s Scope in function
  • 13.
    Variable’s Scope infunction Global variables in nested function OUTPUT: Before calling fun2 : 100 Inside fun2 x= 200 After calling fun2 : 100 x in main: 200 GuessMe!
  • 14.
    Variable’s Scope infunction Non local variable OUTPUT: Inside fun2 x= 200 Before calling fun2: 100 After calling fun2: 200 x in main: 50 GuessMe!
  • 15.
    Function Parameters / ArgumentsPassing and return value These are specified after the function name, inside the parentheses. Multiple parameters are separated by comma.The following example has a function with two parameters x and y . When the function is called, we pass two values, which is used inside the function to sum up the values and store in z and then return the result(z): def sum(x,y): #x, y are formal arguments z=x+y return z #return the value/result x,y=4,5 r=sum(x,y) #x, y are actual arguments print(r) Note :- 1. Function Prototype is declaration of function with name, argument and return type. 2. A formal parameter, i.e. a parameter, is in the function definition. An actual parameter, i.e. an argument, is in a function call.
  • 16.
    Function Function Arguments Functions canbecalled using following types of formal arguments − • Required arguments/Positional parameter - arguments passed in correct positional order • Keyword arguments - the caller identifies the arguments by the parameter name • Default arguments - that assumes a default value if a value is not provided to argu. • Variable-length arguments – pass multiple values with single argument name. #Required arguments def square(x): z=x*x return z r=square() print(r) #In above function square() we have to definitely need to pass some value to argument x. #Keyword arguments def fun( name, age ): "This prints a passed info into this function" print ("Name: ", name) print ("Age ", age) return; # Now you can call printinfo function fun( age=15, name="mohak" ) # value 15 and mohak is being passed to relevant argument based on keyword used for them.
  • 17.
    Function #Default arguments / #DefaultParameter def sum(x=3,y=4): z=x+y return z r=sum() print(r) r=sum(x=4) print(r) r=sum(y=45) print(r) #default value of x and y is being used when it is not passed #Variable length arguments def sum( *vartuple ): s=0 for var in vartuple: s=s+int(var) return s; r=sum( 70, 60, 50 ) print(r) r=sum(4,5) print(r) #now the above function sum() can sum n number of values
  • 18.
    Lamda Python Lambda A lambdafunction is a small anonymous function which can take any number of arguments, but can only have one expression. helpful when you want to pass a function as an argument Syntax : lambda arguments: expression E.g. x = lambda a, b : a * b print(x(5, 6)) OUTPUT: 30
  • 19.
    Mutable/immutable properties of data objectsw/r function Everything in Python is an object,and every objects in Python can be either mutable or immutable. Since everything in Python is an Object, every variable holds an object instance. When an object is initiated, it is assigned a unique object id. Its type is defined at runtime and once set can never change, however its state can be changed if it is mutable. Means a mutable object can be changed after it is created, and an immutable object can’t. Mutable objects: list, dict, set, byte array Immutable objects: int, f loat, complex, frozen set ,bytes string, tuple,
  • 20.
    Mutable/immutable properties of dataobjects w/r function How objects are passed to Functions #Pass by reference def updateList(list1): print(id(list1)) list1 += [10] print(id(list1)) n = [50, 60] print(id(n)) updateList(n) print(n) print(id(n)) OUTPUT 34122928 34122928 34122928 [50, 60, 10] 34122928 #In above function list1 an object is being passed and its contents are changing because it is mutable that’s why it is behaving like pass by reference Visit : python.mykvs.in for regular updates #Pass by value def updateNumber(n): print(id(n)) n += 10 print(id(n)) b = 5 print(id(b)) updateNumber(b) print(b) print(id(b)) OUTPUT 1691040064 1691040064 1691040224 5 1691040064 #In above function value of variable b is not being changed because it is immutable that’s why it is behaving like pass by value
  • 21.
    Functions using libraries Mathematical functions: Mathematicalfunctions are available under math module.To use mathematical functions under this module, we have to import the module using import math. For e.g. To use sqrt() function we have to write statements like given below . import math r=math.sqrt(4) print(r) OUTPUT : 2.0 Visit : python.mykvs.in for regular updates
  • 22.
    Functions using libraries Functionsavailable in Python Math Module Visit : python.mykvs.in for regular updates
  • 23.
    Functions using libraries (Systemdefined function) String functions: String functions are available in python standard module.These are always availble to use. For e.g. capitalize() function Converts the first character of string to upper case. s="i love programming" r=s.capitalize() print(r) OUTPUT: I love programming Visit : python.mykvs.in for regular updates
  • 24.
    Functions using libraries Stringfunctions: Visit : python.mykvs.in for regular updates Method Description capitalize() casefold() center() count() encode() endswith() find() format() index() Converts the first character to upper case Converts string into lower case Returns a centered string Returns the number of times a specified value occurs in a string Returns an encoded version of the string Returns true if the string ends with the specified value Searches the string for a specified value and returns the position of where it was found Formats specified values in a string Searches the string for a specified value and returns the position of where it was found
  • 25.
    Functions using libraries Stringfunctions: Visit : python.mykvs.in for regular updates Method Description isalnum() isalpha() isdecimal() isdigit() isidentifier() islower() isnumeric() isprintable() isspace() istitle() isupper() join() ljust() lower() lstrip() partition() Returns True if all characters in the string are alphanumeric Returns True if all characters in the string are in the alphabet Returns True if all characters in the string are decimals Returns True if all characters in the string are digits Returns True if the string is an identifier Returns True if all characters in the string are lower case Returns True if all characters in the string are numeric Returns True if all characters in the string are printable Returns True if all characters in the string are whitespaces Returns True if the string follows the rules of a title Returns True if all characters in the string are upper case Joins the elements of an iterable to the end of the string Returns a left justified version of the string Converts a string into lower case Returns a left trim version of the string Returns a tuple where the string is parted into three parts
  • 26.
    Functions using libraries Stringfunctions: Visit : python.mykvs.in for regular updates Method Description replace() split() splitlines() startswith() swapcase() title() translate() upper() zfill() Returns a string where a specified value is replaced with a specified value Splits the string at the specified separator, and returns a list Splits the string at line breaks and returns a list Returns true if the string starts with the specified value Swaps cases, lower case becomes upper case and vice versa Converts the first character of each word to upper case Returns a translated string Converts a string into upper case Fills the string with a specified number of 0 values at the beginning