Teachers and Examiners (CBSESkillEduction) collaborated to create the Functions in Python Class 11 Notes. All the important Information are taken from the NCERT Textbook Computer Science (083) class 11.
Functions in Python Class 11 Notes
A complex programme can be broken down into smaller programmes by using functions, and these smaller programmes, known as modules, make the programme easier to understand. A function is a piece of code that only executes when called.
Once defined, a function can be used again throughout the programme without requiring the user to write out the entire code for it each time. It can also be used inside of other functions by simply writing the function name and the necessary parameters.
The Advantages of Function
- Increases readability, particularly for longer code as by using functions, the program is better organised and easy to understand.
- Reduces code length as same code is not required to be written at multiple places in a program. This also makes debugging easier.
- Increases reusability, as function can be called from another function or another program. Thus, we can reuse or build upon already defined functions and avoid repetitions of writing the same piece of code.
- Work can be easily divided among team members and completed in parallel.
Type of Function
There are two types of function in python.
- User – Define Function
- Built – in – Function
The Python language includes built-in functions such as dir, len, and abs. The def keyword is used to create functions that are user specified.
Functions in Python Class 11 Notes
User – Define Function
User-defined functions are the fundamental building block of any programme and are essential for modularity and code reuse because they allow programmers to write their own function with function name that the computer can use.
Creating User Defined Function
A function definition begins with def (short for define). The syntax for creating a user defined function is as follows –
Syntax –
def function_name(parameter1, parameter2, …) :
statement_1
statement_2
statement_3
….
- The items enclosed in “[ ]” are called parameters and they are optional. Hence, a function may or may not have parameters. Also, a function may or may not return a value.
- Function header always ends with a colon (:).
- Function name should be unique. Rules for naming identifiers also applies for function naming.
- The statements outside the function indentation are not considered as part of the function.
Q. Write a user defined function to add 2 numbers and display their sum.
#Program
#Function to add two numbers
def addnum():
fnum = int(input(“Enter first number: “))
snum = int(input(“Enter second number: “))
sum = fnum + snum
print(“The sum of “,fnum,”and “,snum,”is “,sum)
#function call
addnum()
Output:
Enter first number: 5
Enter second number: 6
The sum of 5 and 6 is 11
Functions in Python Class 11 Notes
Arguments and Parameters
User-defined function could potentially take values when it is called. A value received in the matching parameter specified in the function header and sent to the function as an argument is known as an argument.
Q. Write a program using a user defined function that displays sum of first n natural numbers, where n is passed as an argument.
#Program
#Program to find the sum of first n natural numbers
def sumSquares(n):
sum = 0
for i in range(1,n+1):
sum = sum + i
print(“The sum of first”,n,”natural numbers is: “,sum)
num = int(input(“Enter the value for n: “))
sumSquares(num) #function call
Q. Write a program using a user defined function myMean() to calculate the mean of floating values stored in a list.
#Program 7-6
#Function to calculate mean
def myMean(myList):
total = 0
count = 0
for i in myList:
total = total + i
count = count + 1
mean = total/count
print(“The calculated mean is:”,mean)
myList = [1.3,2.4,3.5,6.9]
myMean(myList)
Output:
The calculated mean is: 3.5250000000000004
Functions in Python Class 11 Notes
Q. Write a program using a user defined function calcFact() to calculate and display the factorial of a number num passed as an argument.
#Program 7-7
#Function to calculate factorial
def calcFact(num):
fact = 1
for i in range(num,0,-1):
fact = fact * i
print(“Factorial of”,num,”is”,fact)
num = int(input(“Enter the number: “))
calcFact(num)
Output:
Enter the number: 5
Factorial of 5 is 120
String as Parameters
Some programmes may require the user to supply string values as an argument.
Functions in Python Class 11 Notes
Q. Write a program using a user defined function that accepts the first name and lastname as arguments, concatenate them to get full name and displays the output as:
#Program
#Function to display full name
def fullname(first,last):
fullname = first + ” ” + last
print(“Hello”,fullname)
first = input(“Enter first name: “)
last = input(“Enter last name: “)
fullname(first,last)
Output:
Enter first name: Gyan
Enter last name: Vardhan
Hello Gyan Vardhan
Functions in Python Class 11 Notes
Default Parameter
The argument can be given a default value in Python. When a function call doesn’t have its appropriate argument, a default value is chosen in advance and given to the parameter.
Q. Write a program that accepts numerator and denominator of a fractional number and calls a user defined function mixedFraction() when the fraction formed is not a proper fraction. The default value of denominator is 1. The function displays a mixed fraction only if the fraction formed by the parameters does not evaluate to a whole number.
#Program
#Function to display mixed fraction for an improper fraction
def mixedFraction(num,deno = 1):
remainder = num % deno
if remainder!= 0:
quotient = int(num/deno)
print(“The mixed fraction=”, quotient,”(“,remainder, “/”,deno,”)”)
else:
print(“The given fraction evaluates to a whole number”)
num = int(input(“Enter the numerator: “))
deno = int(input(“Enter the denominator: “))
print(“You entered:”,num,”/”,deno)
if num > deno:
mixedFraction(num,deno)
else:
print(“It is a proper fraction”)
Output:
Enter the numerator: 17
Enter the denominator: 2
You entered: 17 / 2
The mixed fraction = 8 ( 1 / 2 )
Functions in Python Class 11 Notes
Functions Returning Value
The function’s values are returned using the return statement. A function that has finished its duty will return a value to the script or function that called it.
The return statement does the following –
- returns the control to the calling function.
- return value(s) or None.
Q. Write a program using user defined function calcPow() that accepts base and exponent as arguments and returns the value Baseexponent where Base and exponent are integers.
#Program
#Function to calculate and display base raised to the power exponent
def calcpow(number,power):
result = 1
for i in range(1,power+1):
result = result * number
return result
base = int(input(“Enter the value for the Base: “))
expo = int(input(“Enter the value for the Exponent: “))
answer = calcpow(base,expo)
print(base,”raised to the power”,expo,”is”,answer)
Output:
Enter the value for the Base: 5
Enter the value for the Exponent: 4
5 raised to the power 4 is 625
Flow of Execution
The first statement in a programme is where the Python interpreter begins to carry out the instructions. As they read from top to bottom, the statements are carried out one at a time.
The statements contained in a function definition are not executed by the interpreter until the function is called.
Scope of a Variable
An internal function variable can’t be accessed from the outside. There is a well defined accessibility for each variable. The scope of a variable is the area of the programme that the variable is accessible from. A variable may fall under either of the two scopes listed below:
A variable with a global scope is referred to as a global variable, whereas one with a local scope is referred to as a local variable.
Global Variable – A variable that is defined in Python outside of any function or block is referred to as a global variable. It is accessible from any functions defined afterward.
Local Variable – A local variable is one that is declared inside any function or block. Only the function or block where it is defined can access it.
Functions in Python Class 11 Notes
Built-in functions
The pre-made Python functions that are widely used in programmes are known as built-in functions. Let’s examine the subsequent Python programme –
#Program to calculate square of a number
a = int(input(“Enter a number: “)
b = a * a
print(” The square of “,a ,”is”, b)
In the programme mentioned above, the built-in functions input(), int(), and print() are used. The Python interpreter already defines the set of instructions that must be followed in order to use these built-in functions.
Commonly used built-in functions
Function Syntax | Arguments | Returns | Example Output |
---|---|---|---|
abs(x) | x may be an integer or floating point number | Absolute value of x | abs(4) 4 abs(-5.7) 5.7 |
divmod(x,y) | x and y are integers | A tuple: (quotient, remainder) | divmod(7,2) (3, 1) divmod(7.5,2) (3.0, 1.5) divmod(-7,2) (-4, 1) |
max(sequence) or max(x,y,z,…) | x,y,z,.. may be integer or floating point number | Largest number in the sequence/ largest of two or more arguments | max([1,2,3,4]) 4 max(“Sincerity”) ‘y’ #Based on ASCII value max(23,4,56) 56 |
min(sequence) or min(x,y,z,…) | x, y, z,.. may be integer or floating point number | Smallest number in the sequence/ smallest of two or more arguments | min([1,2,3,4]) 1 min(“Sincerity”) ‘S’ Uppercase letters have lower ASCII values than lowercase letters. min(23,4,56) 4 |
pow(x,y[,z]) | x, y, z may be integer or floating point number | xy (x raised to the power y) if z is provided, then: (xy ) % z | pow(5,2) 25.0 pow(5.3,2.2) 39.2 pow(5,2,4) 1 |
sum(x[,num]) | x is a numeric sequence and num is an optional argument | Sum of all the elements in the sequence from left to right. if given parameter, num is added to the sum | sum([2,4,7,3]) 16 sum([2,4,7,3],3) 19 sum((52,8,4,2)) 66 |
len(x) | x can be a sequence or a dictionary | Count of elements in x | len(“Patience”) 8 len([12,34,98]) 3 len((9,45)) 2 >>>len({1:”Anuj”,2:”Razia”, 3:”Gurpreet”,4:”Sandra”}) 4 |
Functions in Python Class 11 Notes
Module
The Python standard library includes a number of modules. A module is a collection of functions, whereas a function is a collection of instructions. suppose we have created some functions in a program and we want to
reuse them in another program. In that case, we can save those functions under a module and reuse them. A module is created as a python (.py) file containing a collection of function definitions.
To use a module, we need to import the module. Once we import a module, we can directly use all the functions
of that module. The syntax of import statement is as follows:
import modulename1 [,modulename2, …]
Built-in Modules
Let’s examine a few widely used modules and the functions that are contained in such modules:
Module name : math
Function Syntax | Arguments | Returns | Example Output |
---|---|---|---|
math.ceil(x) | x may be an integer or floating point number | ceiling value of x | math.ceil(-9.7) -9 math.ceil (9.7) 10 math.ceil(9) 9 |
math.floor(x) | x may be an integer or floating point number | floor value of x | math.floor(-4.5) -5 math.floor(4.5) 4 math.floor(4) 4 |
math.fabs(x) | x may be an integer or floating point number | absolute value of x | math.fabs(6.7) 6.7 math.fabs(-6.7) 6.7 math.fabs(-4) 4.0 |
math.factorial(x) | x is a positive integer | factorial of x | math.factorial(5) 120 |
math.fmod(x,y) | x and y may be an integer or floating point number | x % y with sign of x | math.fmod(4,4.9) 4.0 math.fmod(4.9,4.9) 0.0 math.fmod(-4.9,2.5) -2.4 math.fmod(4.9,-4.9) 0.0 |
math.gcd(x,y) | x, y are positive integers | gcd (greatest common divisor) of x and y | math.gcd(10,2) 2 |
math.pow(x,y) | x, y may be an integer or floating point number | xy (x raised to the power y) | math.pow(3,2) 9.0 math.pow(4,2.5) 32.0 math.pow(6.5,2) 42.25 math.pow(5.5,3.2) 233.97 |
math.sqrt(x) | x may be a positive integer or floating point number | square root of x | math.sqrt(144) 12.0 math.sqrt(.64) 0.8 |
math.sin(x) | x may be an integer or floating point number in radians | sine of x in radians | math.sin(0) 0 math.sin(6) -0.279 |
Functions in Python Class 11 Notes
Module name : random
Function Syntax | Argument | Return | Example Output |
---|---|---|---|
random.random() | No argument (void) | Random Real Number (float) in the range 0.0 to 1.0 | random.random() 0.65333522 |
random.randint(x,y) | x, y are integers such that x <= y | Random integer between x and y | random.randint(3,7) 4 random.randint(-3,5) 1 random.randint(-5,-3) -5.0 |
random.randrange(y) | y is a positive integer signifying the stop value | Random integer between 0 and y | random.randrange(5) 4 |
random.randrange(x,y) | x and y are positive integers signifying the start and stop value | Random integer between x and y | random.randrange(2,7) 2 |
Functions in Python Class 11 Notes
Module name : statistics
Function Syntax | Argument | Return | Example Output |
---|---|---|---|
statistics.mean(x) | x is a numeric sequence | arithmetic mean | statistics.mean([11,24,32,45,51]) 32.6 |
statistics.median(x) | x is a numeric sequence | median (middle value) of x | statistics.median([11,24,32,45,51]) 32 |
statistics.mode(x) | x is a sequence | mode (the most repeated value) | statistics.mode([11,24,11,45,11]) 11 statistics.mode((“red”,”blue”,”red”)) ‘red’ |
Computer Science Class 11 Notes
- Unit 1 : Basic Computer Organisation
- Unit 1 : Encoding Schemes and Number System
- Unit 2 : Introduction to problem solving
- Unit 2 : Getting Started with Python
- Unit 2 : Conditional statement and Iterative statements in Python
- Unit 2 : Function in Python
- Unit 2 : String in Python
- Unit 2 : Lists in Python
- Unit 2 : Tuples in Python
- Unit 2 : Dictionary in Python
- Unit 3 : Society, Law and Ethics
Computer Science Class 11 MCQ
- Unit 1 : Basic Computer Organisation
- Unit 1 : Encoding Schemes and Number System
- Unit 2 : Introduction to problem solving
- Unit 2 : Getting Started with Python
- Unit 2 : Conditional statement and Iterative statements in Python
- Unit 2 : Function in Python
- Unit 2 : String in Python
- Unit 2 : Lists in Python
- Unit 2 : Tuples in Python
- Unit 2 : Dictionary in Python
- Unit 3 : Society, Law and Ethics
Computer Science Class 11 NCERT Solutions
- Unit 1 : Basic Computer Organisation
- Unit 1 : Encoding Schemes and Number System
- Unit 2 : Introduction to problem solving
- Unit 2 : Getting Started with Python
- Unit 2 : Conditional statement and Iterative statements in Python
- Unit 2 : Function in Python
- Unit 2 : String in Python
- Unit 2 : Lists in Python
- Unit 2 : Tuples and Dictionary in Python
- Unit 3 : Society, Law and Ethics