12 Cs Full Study Materials 2022-23

Download as pdf or txt
Download as pdf or txt
You are on page 1of 136

MEMORIAL MATRIC.

HIGHER SECONDARY SCHOOL


Cuddalore - 607 001.

MATERIALS FOR
XII- COMPUTER SCIENCE

NAME : .....................................................................................................................................

CLASS : ....................................................... SEC : ............................................................


COMPUTER SCIENCE
1. FUNCTIONS
Section – A
Choose the best answer (1 Mark)
1. The small sections of code that are used to perform a particular task is called
(A) Subroutines (B) Files (C) Pseudo code (D) Modules
2. Which of the following is a unit of code that is often defined within a greater code structure?
(A) Subroutines (B) Function (C) Files (D) Modules
3. Which of the following is a distinct syntactic block?
(A) Subroutines (B) Function (C) Definition (D) Modules
4. The variables in a function definition are called as
(A) Subroutines (B) Function (C) Definition (D) Parameters
5. The values which are passed to a function definition are called
(A) Arguments (B) Subroutines (C) Function (D) Definition
6. Which of the following are mandatory to write the type annotations in the function definition?
(A) Curly braces (B) Parentheses (C) Square brackets (D) indentations
7. Which of the following defines what an object can do?
(A) Operating System (B) Compiler (C) Interface (D) Interpreter
8. Which of the following carries out the instructions defined in the interface?
(A) Operating System (B) Compiler (C) Implementation (D) Interpreter
9. The functions which will give exact result when same arguments are passed are called
(A) Impure functions (B) Partial Functions
(C) Dynamic Functions (D) Pure functions
10. The functions which cause side effects to the arguments passed are called
(A) Impure functions (B) Partial Functions
(C) Dynamic Functions (D) Pure functions

2
Section-B

Answer the following questions (2 Marks)


1. What is a subroutine?
 Subroutines are small sections of code that are used to perform a particular task that can be used
repeatedly.

2. Define Function with respect to Programming language.


 A function is a unit of code that is often defined within a greater code structure.
 A function works on many kinds of inputs and produces a concrete output

3. Write the inference you get from X:=(78).


 X:=(78) is a function definition.
 Definitions bind values to names.
 Hence, the value 78 bound to the name „X‟.

4. Differentiate interface and implementation.


Interface Implementation

 Interface just  Implementation


defines what an carries out the
object can do, instructions
but won‟t defined in the
actually do it interface

5. Which of the following is a normal function definition and which is recursive function definition
i) let sum x y :
return x + y
g
i.Or
Ans: Normal Function
la
ii) let disp :
a dasa
print „welcome‟www
.P
Ans: Normal Function
rgrg
ia.O
iii) let rec sum num: a l
a al i.O
as s
if (num!=0) then return adad+a sum (num-1)
.P.num
P
wwww
else ww
return num
Ans: Recursive Function

3
Section-C
Answer the following questions (3 Marks)

1. Mention the characteristics of Interface.


rgrg
.OO
 The class template specifiessa laalia
the i.
interfaces to enable an object to be created and operated properly.
d a
d a s
 An object's attributes a a behaviour is controlled by sending functions to the object.
.Pand
.P
ww ww
ww
2. Why strlen is called pure function?
 strlen is a pure function because the function takes one variable as a parameter, and accesses it to
find its length.
 This function reads external memory but does not change it, and the value returned derives from the
external memory accessed.

3. What is the side effect of impure function. Give example.


 Impure Function has the following i . O . rgrg effects,
side
O
l a a i
al effect) is that it doesn‟t take any arguments and it doesn‟t return any
 Function impuread adsaasside
(has
a
value. ww ww.P.P
ww
 Function depends on variablesg or functions outside of its definition block.
i .O . r rg
O
 It never assure you that l the
al a i function will behave the same every time it‟s called.
d adsaasa
 Example: aa
.P.P
wwww
ww

 Here, the result of inc() will change every time if the value of „y‟ get changed inside the function
definition.
 Hence, the side effect of inc () function is changing the data of the external variable „y‟.
4. Differentiate pure and impure function.

 Pure functions will give exact result  Impure functions never assure .O Ogrg
ryou
l alia i.
when the same arguments are passed. adsaasathe same
that the function willabehave
d
a
ww.P.P
every time it‟s
ww wcalled.
w

 Pure function does not cause any side  Impure function causes side effects to

4
effects to its output. its output.

 The return value of the pure functions  The return value of the impure
solely depends on its arguments functions does not solely depend on
passed. l a i.Org its arguments passed.
d asa
w .Pa
wwnot modify the arguments
 They do  They may modify the arguments
which are passed to them. which are passed.

 Example: strlen(), sqrt()  Example: random(), Date()

Section - D
Answer the following questions: (5 Marks)
1. What are called Parameters and write a note on
(i) Parameter without Type (ii) Parameter with Type
Answer:
 Parameters are the variables in a function definition
 Arguments are the values which are passed to a function definition.
 Two types of parameter passing are,
1. Parameter Without
. Type
2. Parameter With Type

5
1. Parameter Without Type:
 Lets see an example of a function definition of Parameter Without Type:
(requires: b>=0 )
(returns: a to the power of b) .Or g
l ai
let rec pow a b:= da sa
a
w.P
if b=0 then 1 ww
else a * pow a (b-1)
l a i.Org
a
dasthe value passed to the
 In the above function definition variable „ b‟ is the parameter aand
P
variable „b‟ is the argument. w.
ww
 The precondition (requires) and postcondition (returns) of the function is given.

 We have not mentioned any types: (data types). This is called parameter without type.

 In the above function definition the expression has type „int‟, so the function's return type also be
„int‟ by implicit.
2. Parameter With Type:
 Now let us write the same function definition with types,

 In this example we have explicitly annotating the types of argument and return type as „int‟.
 Here, when we write the type annotations for „a‟ and „b‟ the parantheses are mandatory.
 This is the way passing parameter with type which helps the compiler to easily infer them.
2. Identify in the following program
let rec gcd a b :=
if b <> 0 then gcd b (a mod b) else return a
i) Name of the function

6
ii) Identify the statement which tells it is a recursive function
 let rec gcd a b :=
 “rec” keyword tells the compiler it is a recursive function

iii) Name of the argument variable
 „a‟ and „b‟
iv) Statement which invoke the function recursively
 gcd b l(ai.modrg
O b)
a a
s the recursion
ada
v) Statement whichPterminates
w.
ww return a
rg g
3. Explain with example Pure and impure
i.Or functions.
i.O
aslaala
asa
adad
.P.P
wwww
ww
 Pure functions will give exact result  Impure functions never assure you
when the same arguments are passed. that the function will behave the same
every time it‟s called.

 Pure function does not cause any side  Impure function causes side effects to
effects to its output. its output.

 The return value of the pure functions  The return value of the impure
solely depends on its arguments functions does not solely depend on
passed. its arguments passed.

 They do not modify the arguments  They may modify the arguments
which are passed to them which are passed.

 If we call pure functions with same set  If we call impure functions with same
of arguments, we will always get the set of arguments, we might get the
same return values. different return values.

Example: sqrt()  Example: random()


let Random number
let a := random()
if a > 10 then
return: a
else
return: 10
7
i.Org
da sala
a
w.P
4. Explain with an example interface and implementation.
 Interface
 An interface is a set of action that an object can do.
 Interface just defines what an object can do, but won‟t actually do it.
 The interface defines an object‟s visibility to the outside world.
 In Object Oriented Programming language, an Interface is a description of all functions that a
class must have.
 The purpose of interfaces is to allow the computer to enforce the properties of the class which
means the class of TYPE T (whatever the interface is) must have functions called X, Y, Z, etc.
 For example when you press a light switch, the light goes on, you may not have cared how it
splashed the light
 In our example, anything that "ACTS LIKE" a light, should have function definitions like
turn_on () and a turn_off ().
 An object "ACTS LIKE" is an instance created from the class “LIGHT”. All the objects of
class “LIGHT” will uses all its functions.
 Characteristics of interface:
 The class template specifies the interfaces to enable an object to be created and operated
properly.
 An object's attributes and behaviour is controlled by sending functions to the object.
 Implementation:
 Implementation carries out the instructions defined in the interface
 How the object is processed and executed is the implementation.
 A class declaration combines the external interface (its local state) with an implementation of
that interface (the code that carries out the behaviour).
 Example:
g
Let's take the example of increasing a car‟s speed.
la i.Or
a d asa
w.P
ww

l a i.Org
da sa
w .Pa
w w

 The person who drives the car doesn't care about the internal working.
 To increase the speed of the car he just presses the accelerator to get the desired behaviour.
8
 Here the accelerator is the interface between the driver (the calling / invoking object) and the engine
(the called object).
 In this case, the function call would be Speed (70): This is the interface.
 Internally, the engine of the car is doing all the things.
 It's where fuel, air, pressure,la
andi .O . rgrg
O
electricity come together i .O . rtogrcreate
O g the power to move the vehicle.
a a la i a l
a al a i
 All of these actionsPare a s
da s a s s
a just wants to go faster.
adaseparated
. .P adadwho
from the driver,
.P.P
 Thus we separate
w w
wwinterface from implementation.www w
ww ww
2. DATA ABSTRACTION
Section – A
Choose the best answer (1 Mark)

1. Which of the following functions that build the abstract data type ?
(A) Constructors (B) Destructors (C) recursive (D)Nested
2. Which of the following functions that retrieve information from the data type?
(A) Constructors (B) Selectors (C) recursive (D)Nested
3. The data structure which is a mutable ordered sequence of elements is called
(A) Built in (B) List (C) Tuple (D) Derived data
4. A sequence of immutable objects is called
(A) Built in (B) List (C) Tuple (D) Derived data
5. The data type whose representation is known are called
(A) Built in datatype (B) Derived datatype
(C) Concrete datatype (D) Abstract datatype
6. The data type whose representation is unknown are called
(A) Built in datatype (B) Derived datatype
(C) Concrete datatype (D) Abstract datatype
7. Which of the following is a compound structure?
(A) Pair (B) Triplet (C) single (D) quadrat

8. Bundling two values together into one can be considered as


r g
(A) Pair ai.O
(B) lTriplet (C) single (D) quadrat
ad asa
9. Which of the following
w.P allow to name the various parts of a multi-item object?
ww
(A) Tuples (B) Lists (C) Classes (D) quadrats
10. Which of the following is constructed by placing expressions within square brackets?
(A) Tuples (B) Lists (C) Classes (D) quadrats

10
Section-B

Answer the following questions (2 Marks)

1. What is abstract data type? ai.Org


da sal
 Abstract Data type a
w w.P (ADT) is a type or class for objects whose behavior is defined by a set of
value and awset of operations.

2. Differentiate constructors and selectors.


CONSTRUCTORS SELECTORS

 Constructors are functions that build the  Selectors are functions that retrieve
abstract data type. information from the data type.

 Constructors create an object, bundling  Selectors extract individual pieces of


together different pieces of information information from the object.

3. What is a Pair? Give an example.


 Any way of bundling two values together into one can be considered as a pair.
 Lists are a common method to do so.
 Therefore List can be called as Pairs.
 Example: lst[(0,10),(1,20)]

4. What is a List? Give an example.


 List can store multiple values of any type.
 List is constructed by placing expressions within square brackets separated by commas.
 Such an expression is called a list literal.
 Example: lst[10,20]

5. What is a Tuple? Give an example.


 A tuple is a comma-separated sequence of values surrounded with parentheses.
 Tuple is similar to a list.
 Cannot change the elements of a tuple.
 Example: Color= ('red', 'blue', 'Green')
11
Section-C
Answer the following questions (3 Marks)

1. Differentiate Concrete data type and abstract datatype.


rg ia.O rgrg
CONCRETE DATA a lai.O
TYPE ABSTRACT DATA
s a l
a TYPE
al i.O
a das adada
Pa
s
.P.(ADT's)
.Pstructures
 Concrete data typeswor (CDT's) are  Abstract Data Types
ww offer a high
w w
direct implementations of a relatively simple
www
level view (andwuse) of a concept independent
concept. of its implementation.
 A concrete data type is a data type whose  Abstract data type the representation of a data
representation is known. type is unknown.

2. Which strategy is used for program designing? Define that Strategy.

 A powerful strategy for designing programs is 'wishful thinking'.


 Wishful Thinking is the formation of beliefs and making decisions according to what might be
pleasing to imagine instead of by appealing to reality.

3. Identify Which of the following are constructors and selectors?


(a) N1=number() -- Constructor
(b) accetnum(n1) -- Selector
(c) displaynum(n1) -- Selector
(d) eval(a/b) -- Selector
(e) x,y= makeslope (m), makeslope(n) -- Constructor
(f) display() -- Selector

4. What are the different ways to access the elements of a list. Give example.
 The elements of a list can be accessed in two ways.
1. Multiple Assignment:
 Which unpacks a list into its elements and binds each element to a different name.
Example:
lst := [10, 20]
x, y := lst
 x will become10 and y will become 20.
12
2. Element Selection Operator:
 It is expressed using square brackets.
 Unlike a list literal, a square-brackets expression directly following another expression does not
evaluate to a list value, but instead selects an element from the value of the preceding
expression.
Example:
lst[0]
10
lst[1]
20
5. Identify Which of the following are List, Tuple and class ?

(a) arr [1, 2, 34] -- List

(b) arr (1, 2, 34) -- Tuple

(c) student [rno, name, mark] -- Class

(d) day= („sun‟, „mon‟, „tue‟, „wed‟) -- Tuple

(e) x= [2, 5, 6.5, [5, 6], 8.2] -- List

(f) employee [eno, ename, esal, eaddress] -- Class

Section - D
Answer the following questions: (5 Marks)
1. How will you facilitate data abstraction.
i . O . rgrg
O Explain it with suitable example.
l ala i
a aadsaasa by defining an abstract data type (ADT), which is a collection of
 Data abstraction is dsupported
w.P.selectors.
constructorsww
and P
ww w
 To facilitate data abstraction, you will need to create two types of functions:
 Constructors
 Selectors
a) Constructor:
 Constructors are functions that rgrbuild
g the abstract data type.
rgrg
 s alaalia.O
i.O
s a l
a alia.O
i.O
s
daadahave adas
 For example,ww
sayayou
.P.P an abstract data
. P. adatype
P called city.
ww ww
ww
ww ww 13
g
 This city object will hold the city‟s name, and its latitude and longitude.
 To create a city object, you‟d use a function like city = makecity (name, lat, lon).
 Here makecity (name, lat, lon) is the constructor which creates the object city.
g
i.O rg
s a l a
a da
ww.P
w
g
i.O rg
da sala
a
ww.P
w
g

b) Selectors:
 Selectors are functions that retrieve information from the data type.
g  Selectors extract individual i. O. rgrg of information from the object.
pieces
O
l al a i
a d
a adsaasa of a city object, you would use functions like
 To extract the information
ww .P.P
wgetname(city)
ww
w
 getlat(city)
g
 getlon(city)
These are the selectors because these functions extract the information of the city object.

g
2. What is a List? Why List can be called as Pairs. Explain with suitable example.
LIST:
g  List is constructed by placing expressions within square brackets separated by commas.
 Such an expression is called a list literal.
 List can store multiple values.
g
i . O . rgrg
O i. O . rgrg
O i . Org
a i a i a
adsaEach
l a
asa value can be of any l a l
adsaastype
a and can even be aanother
sa list.
l l
a d
a a d
a a d
.P.P  The elements of
ww .aP.list
ww P can be accessed inwtwo .P ways.
ww
ww ww
ww ww
1. Multiple Assignment:
 Which unpacks a list into its elements and binds each element to a different name.

14
Example:
lst := [10, 20]
x, y := lst

 x will become10 and y will become 20.


2. Element Selection Operator:
 It is expressed using square brackets.
 Unlike a list literal, a square-brackets expression directly following another expression does not
evaluate to a list value, but instead selects an element from the value of the preceding
expression.
Example:
lst[0]
10
lst[1]
20
PAIR:
 Any way of bundling two values together into one can be considered as a pair.
 Lists are a common method to do so.
 Therefore List can be called as Pairs.
g
Example: lst[(0,10),(1,20)] i.Or ala
Pa das
w.
ww

3. How will you access the multi-item. Explain with example.


MULTI-ITEM: rgrg rgrg
l a i.
a O
i . O l a i
a . O
i . O
l saasal class construct is used to represent multi-
a d
a adsaasina OOP languagesait's
 The structure construct daadcalled
ww.P.P .P.P
ww
wwwwhere
part objects w each part is named. ww
ww
 Consider the following pseudo code:

15
 The new data type Person is pictorially represented as,

i .O . rgrg
O i .Or g
l al a i l a
a d
a adsaasa ada
sa
.P.P
ww w.P
ww
ww ww

i .O . rgrg
O i . O. Orgrg i . O. Orgrg
l al a i l al a i l al a i
a daadsaasa ad aadsaasa ad aadsaasa
.P.P
ww .P.P
ww .P.P
ww
ww
ww ww
ww ww
ww
i .O . rgrg
O i .O . rgrg
O i .O . rgrg
O
l al a i l al a i l al a i
a daadsaasa a daadsaasa a daadsaasa
.P.P
ww .P.P
ww .P.P
ww
ww
ww ww
ww ww
ww
i .O . rgrg
O i .O . rgrg
O i .O . rgrg
O
aal al a i aal al a i aal al a i
P a daadsas P a daadsas P a daadsas
. .P
ww . .P
ww . .P
ww
ww
ww ww
ww ww
ww

 The class (structure) construct defines the form for multi-part objects that represent a person.
 Person is referred to as a class or a type, while p1 is referred to as an object or an instance.
rg g rg g
 Using class you can create .Oi.Or objects of that type.
many
lalia i.Or
lalia.O
a d
a adsaasa adaadsaasa
 Class defineswaw
.P
data .P.P related data items.
P abstraction by grouping
wwww . ww
ww
ww
 A class as bundled data and the functions that work on that data that is using class we can access
multi-part items.
3.SCOPING
Section – A
Choose the best answer (1 Mark)

1. Which of the following refers to the visibility of variables in one part of a program to another part of
the same program.
(A) Scope (B) Memory (C) Address (D) Accessibility
2. The process of binding a variable name with an object is called
(A) Scope (B) Mapping (C) late binding (D) early binding
3. Which of the following is used in programming languages to map the variable and object?
(A) :: (B) := (C) = (D) ==
4. Containers for mapping names of variables to objects is called
(A) Scope (B) Mapping (C) Binding (D) Namespaces
5. Which scope refers to variables defined in current function? i .O . rgrg
O
l al a i
a daadsaasa
(A) Local Scope (B) Global scope (C) Module scope
ww.P.P (D) Function Scope
wwww
6. The process of subdividing a computer program into separate sub-programs is called
i .O . rgrg
O
(A) Procedural Programming (B) Modular programming aal al a i
P a daadsas
(C)Event Driven Programming . .PProgramming
(D) Object oriented
ww
wwww
7. Which of the following security technique that regulates who can use resources in a computing
environment?
(A) Password (B)Authentication (C) Access control (D) Certification
8. Which of the following members of a class can be handled only from within the class?
(A) Public members (B)Protected members (C) Secured members (D) Private members
9. Which members are accessible from outside the class?
(A) Public members (B)Protected members (C) Secured members (D) Private members
10. The members that are accessible from within the class and are also available to its sub-classes is
called
(A) Public members (B)Protected members (C) Secured members (D) Private members

17
Section-B
Answer the following questions (2 Marks)

1. What is a scope?
.O rg
laivariables,
 Scope refers to the visibilityaof parameters and functions in one part of a program to
P a das
another part of w .
thewsame program.
w
2. Why scope should be used for variable. State the reason.

 The scope should be used for variables because; it limits a variable's scope to a single definition.
 That is the variables are visible only to that part of the code.
 Example:

i .O . rgrg
O i . O . rgrg
O
l al a i l al a i
a d
aadsaasa a d
a adsaasa
.P.P
ww .P.P
ww
ww
ww ww
ww

3. What is Mapping?

 The process of binding a variablergrname


g with an object is rcalled
g mapping.
s a l
aalia.O
i.O
s a l ai.O
 = (equal to sign) is used asprogramming languages
adaadin ada to map the variable and object.
ww .P. P w . P
ww
4. What do youwmean
w by Namespaces?ww

 Namespaces are containers for mapping names of variables to objects (name : = object).
 Example: a:=5

 Here the variable „a‟ is mapped to the value „5‟.


5. How Python represents the private and protected Access specifiers?
 Python prescribes a convention of adding a prefix __(double underscore) results in a variable
name or method becoming private.
 Example: self.__n2=n2
r g g
i.Or to a variable name or method makes it protected.
 Adding a prefix _ (single underscore)
laia.O
dadsaasal
 Example: self._sal
.P.Pa=asal
w www
ww 18
Section-C
Answer the following questions (3 Marks)
1. Define Local scope with an example.

 Local scope refers to variables i.O defined


. O i.Org
rgrg in current function.
l al a i la
 A function will alwaysd adlook asa in its local scope.
saasa up for a variable dname
a
.P.P a a
 ww ww w.P
Only if it does
ww not find it there, the outer ww scopes are checked.
 Example: rgrg
s a laalia.Oi.O
s
. P. adaada
P
wwww
ww
i . O. rgrg
O
a i
d a
d saaslala
.P.Paa
wwww
ww
 On execution of the above code the variable a displays the value 7, because it is defined and
available in the local scope.

2. Define Global scope with an example.


 A variable which is declared outside of all the functions in a program is known as global variable.
 Global variable can be accessed inside or outside of all the functions in a program.
 Example:
i .O . rgrg
O
aal al a i
P a daadsas
. .P
ww
ww
ww
i . O. Orgrg
a i
d adsaaslala
a
.P.Pa
wwww
ww

 On execution of the above code the variable a which is defined inside the function displays the
value 7 for the function call Disp() and then it displays 10, because a is defined in global scope.

3. Define Enclosed scope with an O


example.
rgrg rgrg rgrg
l alia. i.O l alia.O
i . O l alia.O
i . O laalia.
 A variable which isad as as
declareda inside a function a s a
s a a s a
s a a s a
s
.P.Pad
a adadwhich
.P.P
a contains another function
adad
.P.P
a definition with
adain
.P.P da
it, the inner ww
wfunction
w can also access ww
wwthe variable of the wouter ww
ww function. This scope ww
wwis called
ww ww w ww
enclosed scope.
 When a compiler or interpreter searches for a variable in a program, it first search Local, and then
search Enclosing scopes.
19
i . O . rgrg
O
l al a i
a daadsaasa
.P.P
ww
ww
ww
i .O . rgrg
O
l al a i
a daadsaasa
.P.P
ww
ww
ww
i .O . rgrg
O i .O . Orgrg
l
aa al a i aal ala i
P a daadsas P a daadsas
 In the abovewexample
w. .P Disp1() is defined .P Disp(). The variable „a‟ defined in Disp() can be
.within
ww
wwww ww
ww
even used by Disp1() because it is also a member of Disp().
4. Why access control is required?

 Access control is a security technique that regulates who or what can view or use resources in a
computing environment.
 It is a fundamental concept ini.O . rgrg that minimizesi.risk
security
O O . rgrtog the object.
O
l a a i l a a i
 In other words access d saasal is a selective restriction
acontrol
d d
l
adsaasa of access to data.
a
.P.P a a
.P.P a
 In OOPS Access
wwww control is implemented wwwthrough
w access modifiers.
ww ww
5. Identify the scope of the variables in the following pseudo code and write its output.
color:= Red
mycolor():
b:=Blue
myfavcolor():
g:=Green
print color, b, g
myfavcolor()
print color, b
mycolor()
print color
OUTPUT:
Red Blue Green
Red Blue
Red
Scope of Variables:
Variables lalia.O . rgrg Scope
O i .O . rgrg
O
i l al a i
a d
Color:=Red
a adsaasa Global
a d
a adsaasa
ww.P.P .P.P
ww
w w
b:=Blue
ww ww
ww Enclosed
G:=Green Local

20
Section - D
Answer the following questions: (5 Marks)

1. Explain the types of scopes for variable or LEGB rule with example.
SCOPE:
 Scope refers to the visibility of variables, parameters and functions in one part of a program to
another part of the same program. g
i.O r
TYPES OF VARIABLE SCOPE:
sala a
 Local Scope .Pad
 ww
EnclosedwScope
 Global Scope O rg
l a i.
 Built-in Scope asa ad
LEGB RULE: ww.P
w
 The LEGB rule is used to decide the order in which the scopes are to be searched for scope
resolution.
 The scopes are listed below in terms of hierarchy (highest to lowest).

g
i.O . rgrg
O i .O . rgrg
O
l al a i lal a i
a d
a adsaasa adaadsaasa
.P.P
ww .P.P
ww
ww
ww ww
ww
g

g i) LOCAL SCOPE: rgrg rgrg rgrg


l a i
a . O
i. O l a i.
a O
i . O l a i
a . O
i. O
asal scope refers to variables
asaLocal l
adsaasa defined in current asal
adsafunction.
a d
a d a d
a ada
.P.P  A function willwalways .PP look up for a variable .P.Pname in its local scope.
ww
ww
ww www.
ww ww
ww
ww
 Only if it does not find it there, the outer scopes are checked.
g  Example:

g
i .O. rgrg
O
l
aa al a i
P adaadsas
. .P
ww
ww
ww 21
g
 On execution of the above code the variable a displays the value 7, because it is defined and
available in the local scope.
ii) ENCLOSED SCOPE:
 A variable which is declared inside a function which contains another function definition with in
it, the inner function can also access the variable of the outer function. This scope is called
enclosed scope.
 When a compiler or interpreter searches for a variable in a program, it first search Local, and then
search Enclosing scopes.

i . O . rgrg
O
a i
d adsaaslala
a
.P.Pa
w ww
w
ww
i . O . rgrg
O
l al a i
a d
a adsaasa
ww.P.P
w w w
w within Disp(). The variable „a‟ defined in Disp() can be
 In the above example Disp1() is defined
even used by Disp1() because it is also a member of Disp().
iii) GLOBAL SCOPE:
 A variable which is declared outside of all the functions in a program is known as global variable.
 Global variable can be accessed inside or outside of all the functions in a program.
 Example:

i . O. rgrg
O i . O rg
a i a
d a
d saaslala d a sal
a
.P.Pa a
w ww
w w w.P
ww w

 On execution of the above code the variable a which is defined inside the function displays the
value 7 for the function call Disp() and then it displays 10, because a is defined in global scope.

iv) BUILT-IN-SCOPE:
 The built-in scope has all the names that are pre-loaded into the program scope when we start the
compiler or interpreter.
 Any variable or module which is defined in the library functions of a programming language has
Built-in or module scope.

22
g
i . O . rgrg
O
l al a i
a d
a adsaasa
.P.P
ww
ww
ww
g
i .O . rgrg
O
l al a i
a d
a adsaasa
.P.P
ww
ww
ww
g
2. Write any Five Characteristics of Modules.
The following are the desirable characteristics of a module.
g 1. Modules
.OO grg instructions, processing logic, and data.
rcontain
a s
a aslaaliai.
a2.dadModules can be separately compiled and stored in a library.
.P.P
wwww
ww 3. Modules can be included in a program.
g
4. Module segments can be used by invoking a name and some parameters.
5. Module segments can be used by other modules.

g 3. Write any five benefits in using modular programming.


 Less code to be written.
 A single procedure can be developed for reuse, eliminating the need to retype the code many times.
g  Programs can be designed easily because a small team deals with only a small part of the entire
code.
 Modular programming allows many programmers to collaborate on the same application.
g  The code is stored across multiple files.
 Code is short, simple and easy to understand.
 Errors can easily be identified, as they are localized to a subroutine or function.
g  The same code can be used in manyrgrapplications.
i.O.O
g
asasalaalai
 The scoping of variables
Padadcan easily be controlled.
. .P
ww
ww
ww
g

23
g
g

4. ALGORITHMIC STRATEGIES
Section – A
Choose the best answer (1 Mark)

1. The word comes from the name of a Persian mathematician Abu Ja‟far Mohammed ibn-i Musa al
Khowarizmi is called?
(A) Flowchart (B) Flow (C) Algorithm (D) Syntax
2. From the following sorting algorithms which algorithm needs the minimum number of swaps?
(A) Bubble sort (B) Quick sort (C) Merge sort (D) Selection sort
3. Two main measures for the efficiency of an algorithm are
(A) Processor and memory (B) Complexity and capacity
(C) Time and space (D) Data and space
4. The algorithm that yields expected output for a valid input is called as
(A) Algorithmic solution (B) Algorithmic outcomes
(C) Algorithmic problems gg
.O r r coding
(D) Algorithmic
l alia i . O
5. Which of the following is used to describe the d adsaacase
worst
a a
sa of an algorithm?
.PP
ww.
wwww
(A) Big A (B) Big S (C) Big W (D) Big O
.O rgrg
O Org
6. Big  is the reverse of l
aaalia i. l a i.
adaadsas a dasa
(A) Big O ww P
. .P (B) Big θ w.P (C) Big A (D) Big S
ww ww ww
7. Binary search is also called as
(A) Linear search (B) sequential g search (C) Random search (D) Half-internal search
O
. i. r
O r g . Org
8. The Θ notation in asymptotic
aala li
evaluation
a represents l a i
a
P adaadsas a das
(A) Base caseww
w . . P . P
(B) Average caseww(C) Worst case (D) NULL case
ww w w
9. If a problem can be broken into subproblems which are reused several times, the problem possesses
which property?
(A) Overlapping subproblems (B) Optimal substructure
(C) Memoization (D) Greedy
10. In dynamic programming, the technique of storing the previously calculated values is called ?
(A) Saving value property (B) Storing value property
(C) Memoization (D) Mapping
g
24
Section-B

Answer the following questions (2 Marks)


1. What is an Algorithm?
 An algorithm is a finite set of instructions to accomplish a particular task.
 It is a step by step procedure for solving a given problem
2. Write the phases of performance evaluation of an algorithm.
 The Performance evaluation of an algorithms can be divided into two different phases.
> A priori estimates
This is a theoretical performance analysis of an algorithm.
> A posteriori testing :
This is called performance Measurement.
3. What is insertion sort?
 Insertion sort is a simple sorting algorithm that builds the final sorted array or list one item
at a time
 It always maintains a sorted sublist in the lower position of the list
4. What is Sorting?
 Sorting is a process of arranging group of items in an ascending or descending order.
 Bubble Sort, Quick Sort, Heap Sort, Merge Sort, Selection Sort are the various sorting
algorithms.
5. What is searching? Write its types.
 A Search algorithm is the step-by-step procedure used to locate specific data among a collection
of data.
 Example: Linear Search, Binary Search
Section-C
Answer the following questions (3 Marks)
1. List the characteristics of an algorithm.
 Input
 Output
 Finiteness
 Definiteness
 Effectiveness
 Correctness
 Simplicity
 Unambiguous
 Feasibility
 Portable
 Independent
25
rgrg and its types.
2. Discuss about Algorithmic complexity
i.O.O
asaaslaalai
d
a ad
ALGORITHMIC COMPLEXITY:
ww.P.P
w
wwwof an algorithm f(n) gives the running time and/or the storage space required by
 The complexity
the algorithm in terms of n as the size of input data.
TYPES OF COMPLEXITY:
1. Time Complexity
 The Time complexity of an algorithm is given by the number of steps taken by the algorithm to
complete the process.
2. Space Complexity
 Space complexity of an algorithm is the amount of memory required to run to its completion.
 The space required by an algorithm is equal to the sum of fixed part and variable part.

3. What are the factors that influence time and space complexity.
The two main factors, which decide the efficiency of an algorithm are,
 Time Factor -Time is measured by counting the number of key operations like comparisons in the
sorting algorithm.
 Space Factor - Space is measured by the maximum memory space required by the algorithm.

l a i .Org
4. Write
asa a note on Asymptotic notation.
a d
w .P
ww  Asymptotic Notations are languages that use meaningful statements about time and space
complexity.
g
 The following three asymptotic notations are mostly used to represent time complexity of
algorithms:

(i) Big O
g
 Big O is often used to describe the worst-case of an algorithm.

(ii) Big Ω
g  Big Omega is the reverse Big rg
OO.
s alai.
 Example: If Big a a used to describe the upper bound (worst - case) then, Big Ω is used to
Odis
w .P
wwlower bound (best-case).
describe the
g (iii) Big Θ

 When an algorithm has a complexity with lower bound = upper bound, that algorithm has a
complexity O (n log n) and Ω (n log n), it‟s actually has the complexity Θ (n log n).
g
 Time complexity is n log n in both best-case and worst-case.

26
g
5. What do you understand by Dynamic i . O . rgrg programming?
O
l al a i
 Dynamic programming
a d
a adsaasisa used when the solution to a problem can be viewed as the result of a
w.P.P
sequence ofwdecisions.
wwww
 Dynamic programming approach is similar to divide and conquer (i.e) the problem can be
i .O . Orgrg
divided into smaller sub-problems.
l al a i
dadsaasa can be re-used to complete the process.
 Results of the sub-problems
a a
ww.P.P
w w
 Dynamic programming approaches are used to find the solution in optimized way.
w w

Section - D
Answer the following questions: (5 Marks)
1. Explain the characteristics of an algorithm.
g
ia.O r rg
.O
a l
aal i
P adaadsas
Characteristics ..
ww P Meaning
wwww
Input Zero or more quantities to be supplied.
Output At least one quantity is produced.
Finiteness Algorithms must terminate after finite number of steps.
Definiteness All operations should be well defined.
Effectiveness Every instruction must be carried out effectively.
Correctness The algorithms should be error free.
Simplicity Easy to implement.
Algorithm should be clear and unambiguous. Each of its steps should be clear
Unambiguous
and must lead to only one meaning.
Feasibility Should be feasible grgwith the available resources.
. O. r
O
Portable a s
a aslaaliaishould
An algorithm be generic, independent and able to handle all range of
d d
inputs.
a
ww .P.Pa
wwww
An algorithm should have step-by-step directions, which should be independent
Independent
of any programming
i . O. rgrg code.
O
lal a i
adaadsaasa
2. Discuss aboutww
.P.Psearch algorithm.
ww
Linear
ww
LINEAR SEARCH:
 Linear search also called sequential search is a sequential method for finding a particular value in a
list.
 This method checks the search element with each element in sequence until the desired element is
found or the list is exhausted.
 In this searching algorithm, list need not be ordered.
27
g
Pseudo code:
1. Traverse the array using for loop
2. In every iteration, compare the target search key value with the current value of the list.
gg
.O r r current index and value of the array
 If the values match, display
lalia i. O
the
d saasa
admatch,
 If the values do a
.P.Pnot
a move on to the next array element. If no match is found, display the
wwww
search element not found.
ww
3. If no match is found, display the search element not found.

Example:
 To search the number 25 in the array given below, linear search will go step by step in a
sequential order starting from the first element in the given array.
 if the search element is found that index is returned otherwise the search is continued till the last
index of the array.
 In this example number 25 is found at index number 3.
i . O . rgrg
O
index 0 1 l al a i
a d
a adsaas2a 3 4
values 10 .P.P 20
12
ww 25 30
ww
ww
Snippet:
Input: values[]={10,12,20,25,30}
Target=25
Output:
3

3. What is Binary search? Discuss with example.


BINARY SEARCH:
 Binary search also called half-interval
i . O . rgrg search algorithm.
O
a i
 It finds the position of a
d asaaslalaelement within a sorted array.
search
d
a
P.Pa
.algorithm
 The binary search
w ww
w can be done as divide-and-conquer search algorithm and executes in
ww
logarithmic time.
Pseudo code for Binary search:ai.Org
a sal
1. Start with the middle element:
d
.P a
w
ww
a) If the search element is equal to the middle element of the array, then return the index of the
middle element.
b) If not, then compare the middle element with the search value,
c) If (Search element > number in the middle index), then select the elements to the right side
of the middle index, and go to Step-1.
d) If (Search element < number in the middle index), then select the elements to the left side of
the middle index, and start with Step-1.

28
2. When a match is found, display success message with the index of the element matched.

3. If no match is found for all comparisons, then display unsuccessful message.

Binary Search Working principles with example:


 List of elements in an array must be sorted first for Binary search.

 The array is being sorted in the given example and it is suitable to do the binary search
algorithm.

 Let us assume that the search element is 60 and we need to search the location or index of
search element 60 using binary search.

 First, we find index of middle element of the array byOusing


Orgrg this formula :
s aslaalia. i.
mid = low .wP.+P aada - low) / 2
ad(high
www
ww
g  Here it is, 0 + (9 - 0 ) / 2 = 4. So, 4 is the mid value of the rgrgarray.
i . O
i. O
d adsaaslaala
.P.Paa
w ww
w
ww
g  Compare the value stored at index 4 with target value, i .O . rg
O rg is not match with search element.
which
aal al a i
As the search value 60 > 50. daadsas
P
. .Pa
wwww
ww
g  Now we change our search range low to mid + 1 and i . O . rgrgthe new mid value as index 7.
find
O
a i
d adsaaslala
 We compare the value stored at indexw7w a
P.Paour target value.
.with
ww w w
g

 Element not found because the value in index 7 is greater than search value . ( 80 > 60)
g  So, the search element must be in the lower part from the current mid value location

 Now we change our search range low to mid - 1 and find the new mid value as index 5
g
i.O. rgrg
O
l
aa ala i
P a daadsas
. .P
ww
ww
ww 29
g
 Now we compare the value stored at location 5 with our search element.
 We found that it is a match.

 We can conclude that the search element 60 is found at lcoation or index 5.

4. Explain the Bubble sort algorithm with example.


 Bubble sort is a simple sorting algorithm, it starts at the beginning of the list of values stored in
an array.

 It compares each pair of adjacent elements and swaps them if they are in the unsorted order.

 This comparison and passed to be continued until no swaps are needed, which shows the values
in an array is sorted.

 It is named so becase, the smaller elements "bubble" to the top of the list.

 It is too slow and less efficient when compared to other sorting methods.
Pseudo code
1. Start with the first element i.e., index = 0, compare the current element with the next element of the
array.

2. If the current element is greater than the next element of the array, swap them.

If the current element is less than the next or right side of the element, move to the next element.
Go to Step 1 and repeat until end of the index is reached.
Example:
 Consider an array with values {15, 11, 16, 12, 14, 13}
 Below, we have a pictorial representation of how bubble sort.

i . O .Orgrg
l al a i
a d
a adsaasa
.P.P
ww
ww
ww
i .O . Orgrg
l ala i
adaadsaasa
.P.P
ww
ww
ww

30
 The above pictorial example i . Ois
. rgfor
O rg iteration-1.
l a a i
 Similarly, remaining d saasal can be done.
aditeration
a a
.P.Pwill give the sorted array.
 The final iteration
wwww

w w
At the end of all the iterations we will get the sorted values in an array as given below:
i .O . rgrg
O
l al a i
a d
a adsaasa
ww.P.P
wwww
5. Explain the concept of Dynamic programming with suitable example.
 Dynamic programming is used when the solution to a problem can be viewed as the result of a
sequence of decisions.
 Dynamic programming approach is similar to divide and conquer (i.e) the problem can be
divided into smaller sub-problems.
. O rgrg
O . O rgrg
O
 Results of the sub-problems a i
aslala i .
can be re-used to i
complete .
aslala the process.
a i
a s
a a sa
 Dynamic programming adad approaches are used
.P.P adatod find the solution in optimized way.
.P.P
w w
ww programming ww www w
ww
Steps to do Dynamic
 The given problem will be divided into smaller overlapping sub-problems.
 An optimum solution for the given problem can be achieved by using result of smaller sub-
problem.
 Dynamic algorithms uses Memoization.
i .O . rgrg
O
l al a i
a d
a adsaasawith Dynamic Programming Approach
Fibonacci Iterative Algorithm
ww.P.P
wwww
 The following example shows a simple Dynamic programming approach for the generation of
Fibonacci series.
 Initialize f0=0, f1 =1
 step-1: Print the initial values of Fibonacci f0 and f1
i.O rgrg
 step-2: Calculate fibanocci i.O
salaalafib ← f0 + f1
daadas
P
.f0←a
P
 step-3: Assign
ww ww . f1, f1← fib
ww
 step-4: Print the next consecutive rgrgvalue of fibanocci fib
i . O
. O
laalai until the specified number of terms generated laalia.
 step-5: Goto step-2dand s a
srepeat s a
s
.wP.Pa aada adaada
.wP.P
 For example w ww
wwif we generate fibonacci series upto 10 digits, the algorithm will generate w
the series
ww ww
as shown below:
 The Fibonacci series is : 0 1 1 2 3 5 8 13 21 34 55

31
5. PYTHON - VARIABLES AND OPERATORS
Section – A
Choose the best answer (1 Mark)

1. Who developed Python ?


A) Ritche B) Guido Van Rossum
C) Bill Gates D) Sunder Pitchai
2. The Python prompt indicates that Interpreter is ready to accept instruction.
A) >>> B) <<< C) # D) <<
3. Which of the following shortcut is used to create new Python Program ?
A) Ctrl + C B) Ctrl + F C) Ctrl + B D) Ctrl + N
4. Which of the following character is used to give comments in Python Program ?
A) # B) & C) @ D) $
5. This symbol is used to print more than one item on a single line.
rg g
A) Semicolon(;) i.Or
B) Dollor($)
ai.O C) comma(,) D) Colon(:)
6. Which of the following d a
is
d saaslaalatoken ?
not
aa
.P.P
w ww
w
ww
A) Interpreter B) Identifiers C) Keyword D) Operators
7. Which of the following is not a Keyword in Python ?
A) break B) while C) continue D) operators
8. Which operator is also called as Comparative operator?
A) Arithmetic B) Relational C) Logical D) Assignment
9. Which of the following is not Logical operator?
A) and B) or C) not D) Assignment
10. Which operator is also called as Conditional operator?
A) Ternary B) Relational C) Logical D) Assignment
Section-B
Answer the following questions (2 Marks)
1. What are the different modes that can be used to test Python Program ?

 In Python, programs can be written in two ways namely Interactive mode and Script mode.
 Interactive mode allows us to write codes in Python command prompt ( >>> ).
 Script mode is used to create and edit python source file with the extension .py
32
2. Write short notes on Tokens.

 Python breaks each logical line into a sequence of elementary lexical components known as
Tokens.
 The normal token types are ,
1) Identifiers,

2) Keywords,

3) Operators,

4) Delimiters and

5) Literals.
3. What are the different operators that can be used in Python ?

 Operators are special symbols which represent computations, conditional matching in


programming.
 Operators are categorized as Arithmetic,
g Relational, Logical, Assignment and Conditional.
i .O . r rg
O
l ala i
a d
aadsaathe
4. What is a literal? Explain sa types of literals ?
ww.P.P
wwww
 Literal is a raw data given in a variable or constant.

 In Python, there are various types of literals. They are,

1) Numeric Literals consists of digits and are immutable


O rg g
r rg gr
2) String literal is a sequence
saasa
i.Ocharacters
lalia.of lalia.O
surrounded
saasa
.Oquotes.
iby
ad a
d a d a
d
3) Boolean literal
w ww .Pahave any of thewtwo
.Pcan ww .Pa True or False.
.Pvalues:
ww w ww w
5. Write short notes on Exponent data?
 An Exponent data contains decimal digit part, decimal point, exponent part followed by one or
more digits.
 Example: 12.E04, 24.e04
Section-C
Answer the following questions (3 Marks)

1. Write short notes on Arithmetic operator with examples.


 An arithmetic operator is a mathematical operator used for simple arithmetic.
33
 It takes two operands and performs a calculation on them. g
i.Or
d a sala
 Arithmetic Operators used in python: .Pa
w
ww
i .O . rgrg
O i .O . rgrg
O i.O . rgrg
O
l al a i l al a i la l a i
a daadsaasa a daadsaasa a daadsaasa
ww.P.P ww.P.P .P.P
ww
wwww ww
ww ww
ww
i .O . rgrg
O i .O . rgrg
O i .O . rgrg
O
aal al a i aal al a i aal al a i
P a daadsas P a daadsas P a daadsas
ww. .P ww. .P . .P
ww
wwww ww
ww ww
ww

2. What are the assignment operators that can be used in Python?


 „=‟ is a simple assignment operator to assign values to variable.
 There are various compound operators in Python like +=, -=, *=, /=, %=, **= and //=.
 Example:
a=5 # assigns the value 5 to a
a,b=5,10 # assigns the value 5 to a and 10 to b
a+=2 # a=a+2, add 2 to the value of „a‟ and stores the result in „a‟ (Left hand operator)
3. Explain Ternary operator with examples.
 Ternary operator is also known as conditional operator that evaluates something based on a
condition being true or false.

l ai .Org
 It simply allows testing a condition in a single
sa
da replacing the multiline if-else making the code
Paline
w.
compact. ww
Syntax:

Variable Name = [on_true] if [Test expression] else [on_false]

Example :

min = 50 if 49<50 else 70 # Output: min = 50


4. Write short notes on Escape sequences with examples.
 In Python strings, the backslash "\" is a special character, also called the "escape" character.

34
 It is used in representing certain whitespace characters.i.Org
da sala
 Python supports the following escape sequence a
w w.P characters.
w

l a i .Org
a d asa
w.P
ww

5. What are string literals? Explain.


 In Python a string literal is a sequence of characters surrounded by quotes.
 Python supports single, double and triple quotes for a string.
 A character literal is a single character surrounded by single or double quotes.
 The value with triple-quote "' '" is used to give multi-line string literal.
 Example:
strings = "This is Python"
char = "C"
gg r
i.isOar multiline string with more than one line code."'
lalia.O
multiline_str = "' This
asaasa
adad
print (strings)
w.P.P
www
ww
print (char)
print (multiline_str)
 Output:
This is Python
C
This is a multiline string with more than one line code.
Section - D
Answer the following questions: (5 Marks)
1. Describe in detail the procedure Script mode programming.
SCRIPT MODE PROGRAMMING:
 A script is a text file containing the Python statements.

35
 Once the Python Scripts is created, they are reusable , it can be executed again and again without
retyping.
 The Scripts are editable.
(i) Creating Scripts in Python
ia.O rgrg
.O ia.O rgrg
.O
1. Choose File → New File orapressl al i Ctrl + N in Pythonalshell
al i window.
a s s a a s sa
2. An untitled blank script
.P.P da editor will be displayed
adatext adada on screen.
.P.P
www w w
ww w
3. Type the codewin
w Script editor as givenwbelow,w
i .O . rgrg
O
aal al a i
P a daadsas
ww. .P
ww
ww
i. O . rgrg
O
a i
d adsaaslala
a
.P.Pa
w ww
w
ww
(ii) Saving Python Script
(1) Choose File → Save or Press Ctrl + S
(2) Now, Save As dialog box appears on the screen.
(3) In the Save As dialog box
 Select the location to save your Python code.
 Type the file name in File Name box.
 Python files are by default saved with extension .py.
 So, while creating scripts using Python Script editor, no need to specify the file extension.
(4) Finally, click Save button to save your Python script.
(iii) Executing Python Script
(1) Choose Run → Run Module or Press F5
(2) If your code has any error, it will be shown in red color in the IDLE window, and Python describes
the type of error occurred.

 To correct the errors, go back to Script editor, make corrections, save the file and execute it
again.
(3) For all error free code, the output will appear in the IDLE window of Python as shown in Figure.

i .O . rgrg
O
l al a i
a d
aadsaasa
.P.P
ww
ww
ww

36
2. Explain input() and print() functions with examples.
Input and Output Functions
 A program needs to interact with the user to accomplish the desired task; this can be achieved using
Input-Output functions.

 The input() function helps to enter data at run time by the user

 The output function print() is used to display the result of the program on the screen after
execution.
1) print() function
 In Python, the print() function is used to display result on the screen.
 Syntax for print():

 Example:

i .O . rgrg
O
a i
dadsaaslala
a
.P.Pa the expression before printing it on the monitor.
 The printw(w)w
wevaluates
w
w
 The print () displays an entire statement which is specified within print ( ).
 Comma ( , ) is used as a separator in print ( ) to print more than one item.

2) input() function
 In Python, input( ) function is used to accept data as input at run time.
 The syntax for input() function is,

 “Prompt string” in the syntax is a message to the user, to know what input can be given.

37
 If a prompt string is used, iti.O
is Ogrg
rdisplayed on the monitor; . O rgrthe
O g user can provide.expected
O rgrg data from
O
la ai . l a ia i . l a ia i .
the input device. da dsaasal dadsaasa
l
dadsaasa
l
a a a
.PP
.P.Ptyped data from thewkeyboard a a
.P.P a
 The input(
ww
w
w) w w
takes wwwww. and storeswinwthe ww
ww given variable.
 If prompt string is not given in input( ), the user will notgknow what is to be typed as input.
i .O . r rg
O
 Example: l al a i
sa as
. P.Padaada
wwww
ww

 In Example 1 input() using prompt string takes proper input and produce relevant output.
 In Example 2 input() without using prompt string takes irrelevant input and produce unexpected
output.
 So, to make your program more interactive, provide prompt string with input( ).
Input() using Numerical values:
 The input ( ) accepts all O
l ali
a . data
i . rgrgas string or characters but not as numbers.
O
 The int( ) function
a d
a adsaisasaused to convert string data as integer data explicitly.
 Example: ww.P.P
ww
ww
i .O . rgrg
O
aal al a i
P a daadsas
ww . .P
wwww

i . O . rgrg
O
a i
d adsaaslala
a
.P.Pa
ww
3. Discuss in detail about Tokens in Python.
ww
ww
Tokens
 Python breaks each logical line into a sequence of elementary lexical components known as
Tokens.
 The normal token types are,

1) Identifiers,
2) Keywords,
3) Operators,
4) Delimiters and
5) Literals.

38
 Whitespace separation is necessary between tokens, identifiers or keywords.
1) Identifiers
 An Identifier is a name used to identify a variable, function, class, module or object.
 An identifier must start with an alphabet (A..Z or a..z) or underscore ( _ ).
 Identifiers may contain digits (0 .. 9)
 Python identifiers are case sensitive i.e. uppercase and lowercase letters are distinct.
 Identifiers must not be a python keyword.
 Python does not allow punctuation g
.Orcharacter such as %,$, @ etc., within identifiers.
a l a i
 Example of valid identifiers: s Sum, total_marks, regno, num1
. P ada
 Example of invalid w
ww identifiers: 12Name, name$, total-mark, continue
2) Keywords
 Keywords are special words used by Python interpreter to recognize the structure of program.
 Keywords have specific meaning for interpreter, they cannot be used for any other purpose.
 Python Keywords: false, class, If, elif, else, pass, break etc.
3) Operators i . O . rgrg
O i . O. rgrg
O i . O . rgrg
O
la
al a i l al a i l a a i
 Operators are special d adsaassymbols d adsaasa computations,
which represent d saasal
adconditional matching in
. P a
P a . PPa a . PPa a
programming. wwww. wwww. wwww.
ww ww ww
 Operators are categorized as Arithmetic, Relational, Logical, Assignment and Conditional.
ia.O .O rgrg
 Value and variables whenaused l al iwith operator are known as operands.
d adsasa
 Example: .P.Paa
wwww
ww
a=100
b=10
l a i .Org
print ("The Sum a
P a das = ",a+b)
w. a > b = ",a>b)
printw("The
w
print ("The a > b or a == b = ",a>b or a==b)
a+=10
print(“The a+=10 is =”, a)
 Output:
The Sum = 110
The a>b = True
The a > b or a == b = True
The a+=10 is= 110

4) Delimiters
 Python uses the symbols and symbol combinations as delimiters in expressions, lists, dictionaries
and strings.
 Following are the delimiters.
39
i . O . rgrg
O
l ala i
adaadsaasa
ww.P.P
ww ww
5) Literals i .O . rgrg
O
l al a i
a d
a adsaasa
 Literal is a raw data given in a variable or constant.
ww.P.P
 In Python, there are various types of w ww
literals.
w They are,
1) Numeric Literals consists of digits and are immutable
2) String literal is a sequence of characters surrounded by quotes.
3) Boolean literal can have any of the two values: True or False.
6. CONTROL STRUCTURES
Section – A
Choose the best answer (1 Mark)
1. How many important control structures are there in Python?
A) 3 B) 4 C) 5 D) 6
2. elif can be considered to be abbreviation of
A) nested if B) if..else C) else if D) if..elif
3. What plays a vital role in Python programming?
A) Statements B) Control D) Indentation
4. Which statement is generally used as a placeholder?
A) continue B) break C) pass D) goto
5. The condition in the if statement should be in the form of
A) Arithmetic or Relational expression B) Arithmetic or Logical expression
C) Relational or Logical expression D) Arithmetic
6. Which of the following is known as definite loop?
A) do..while B) while C) for D) if..elif
rg
lai.O snippet?
7. What is the output of the following
a
i=1 P a das
w.
ww
while True:
if i%3 ==0:
break
print(i,end='')
i +=1
A) 1 2 B) 123 C) 1234 D) 124
8. What is the output of the following snippet?
T=1
while T:
print(True)
break

41
A) False B) True C) 0 D) no output

9. Which amongst this is not a jump statement ?


A) for B) goto C) continue D) break
10. Which punctuation should be used in the blank?
if <condition>_
statements-block 1
else:
statements-block 2
A) ; B) : ai.Org i.Or
C)a:: g D) !
al asa
l
a das d
Section-B
a
.P w.P
Answer the following
w ww
questions ww (2 Marks)
1. List the control structures in Python.

 Three important control structures are,


* Sequential
* Alternative (or) Branching
* Interative (or) Looping

2. Write note on break statement.


break statement :

 The break statement terminates the loop containing it.


 Control of the program flows to the statement immediately after the body of the loop.
3. Write is the syntax of if..else statement

Syntax:
if <condition>:
statements-block 1
else:
statements-block 2
42
4. Define control structure.

 A program statement that causes a jump of control from one part of the program to another is called
control structure or control statement.
5. Write note on range () in loop
 range() generates a list of values starting from start till stop-1 in for loop.
 The syntax of range() is as follows:
range (start,stop,[step])

Where,

start – refers to the initial value

stop – refers to the final value

step – refers to increment value, this is optional part.


Section-C
Answer the following questions (3 Marks)
1. Write a program to display
A
AB
ABC
ABCD
ABCDE
CODE:
a=['A','B','C','D','E']
for i in range(0,6):
for j in range(0,i):
print(a[j],end=" ")
else:
print()
2. Write note on if..else structure.

 The if .. else statement provides control to check the true block as well as the false block.
 if..else statement thus provides two possibilities and the condition determines which BLOCK is to be
executed.

43
Syntax:
if <condition>:
statements-block 1
else:
statements-block 2
3. Using if..else..elif statement write a suitable program to display largest of 3 numbers.

CODE:
n1= int(input("Enter the first number:"))
rg g
n2= int(input("Enter the second a i.Or
number:"))
i.O
d a
d saaslala
n3= int(input("Enter the a
.P.Pthird
a number:"))
w ww
w
ww
if(n1>=n2)and(n1>=n3):
biggest=n1;
elif(n2>=n1)and(n2>=n3):
biggest=n2
else:
biggest=n3
print("The biggest number between",n1,",",n2,"and",n3,"is",biggest)
OUTPUT
Enter the first number:1
Enter the second number:3
Enter the third number:5
The biggest number between 1 , 3 and 5 is 5
4. Write the syntax of while loop.
Syntax:
while <condition>:
statements block 1
[else:
statements block2]

44
5. List the differences between breakrgrand
i.O.O rgrg
g continue statements.
i.O.O i . O . rgrg
O
l al a i l al a i l al a i
a d
break
a adsaasa a d
a adsaasa d adsaasa
continue
a a
.P.P
ww ww.P.P ww.P.P
w ww
w wwww wwww
The break statement terminates the loop The Continue statement is used to skip the
containing it. remaining part of a loop and
Control of the program flows to the statement Control of the program flows start with next
immediately after the body of the loop. iteration.
Syntax: Syntax:

break continue

Section - D
Answer the following questions: (5 Marks)

1. Write a detail note on for loop.

 for loop is the most comfortable loop.


rgrg
a lalia.O
i.O
s
 It is also an entry checkdloop.
a s a
a ada
.P.P
www w
 The conditionwis w checked in the beginning and the body of the loop(statements-block 1) is executed
if
it is only True otherwise the loop is not executed.
Syntax:
for counter_variable in sequence:
statements-block 1
[else: # optional block
g
statements-block 2]
 The counter_variable is the control variable.

g  The sequence
rg g refers to the initial, final
rg g and increment value.rg
a l
a al i.Or
ia.O alaal i.Or
ia.O a l a i.O
 fors sloop uses the range() function
ss in the sequence to
s specify the initial, final and increment values.
. P. adaada
P . P. adaada
P . P ada
wwww  range() generates wwwawlist of values startingwfromw start till stop-1.
ww ww w

45
The syntax of range() is as follows:
range (start,stop,[step])
Where,
ia.Orgrg
start – refers to the initial i.O
alaalvalue
ss
. P. adaada
P
stop – refers
ww w
towthe final value
ww
step – refers to increment value, this is optional part.

Example:

for i in range(2,10,2):
print (i,end=' ')
else:
print ("\nEnd of the loop")

Output:
2468

2. Write a detail note on if..else..elif statement with suitable example.

Nested if..elif...else statement:

 When we need to construct a chain of if statement(s) then „elif‟ clause can be used instead of „else‟.
 „elif‟ clause combines if..else-if..else statements to one if..elif…else.
 „elif‟ can be considered to be abbreviation of „else if‟.
 In an „if‟ statement there is no limit of „elif‟ clause that can be used, but an „else‟ clause if used
should be placed at the end.
Syntax:

if <condition-1>:
statements-block 1
elif <condition-2>:
statements-block 2
else:
statements-block n
46
rg g
 In the syntax of if..elif..else mentioned risgrtested
g grg
rstatements-
i.Or above, condition-1
i.O
aslaala i.O
i.O
aslaala
if it is true then
i.O
i.O
aslaala
block1 is executed.PP d a s
a d a s
a d a s
a
w . . a ad
w ww
a ad
.P.P ww
a ad
.P.P
w
www w
www w
www
 Otherwise the control checks condition-2, if it is true statements-block2 is executed and even if it
fails statements-block n mentioned in else part is executed.
Example:
m1=int (input(“Enter mark in first subject : ”))
m2=int (input(“Enter mark in second subject : ”))
avg= (m1+m2)/2
if avg>=80:
print (“Grade : A”)
elif avg>=70 and avg<80:
print (“Grade : B”)
elif avg>=60 and avg<70:
print (“Grade : C”)
elif avg>=50 and avg<60:
print (“Grade : D”)
else:
print (“Grade : E”)

Output :
Enter mark in first subject : 34
Enter mark in second subject : 78
Grade : D
3. Write a program to display all 3 digit odd numbers.

CODE:
lower=int(input("Enter the lower limit for the range:"))
rgrg
.OO
iai. for the range:"))
saslaallimit
upper=int(input("Enter the upper
. P. adaada
P
for i in range(lower,upper+1):
ww ww
ww
if(i%2!=0):
print(i,end=" ")

47
Output:

4. Write a program to display multiplication table for a given number.


CODE:

num=int(input("Display Multiplication Table of "))


for i in range(1,11):
print(i, 'x' ,num, '=' , num*i)
Output:
7. PYTHON FUNCTIONS
Section – A
Choose the best answer (1 Mark)

1. A named blocks of code that are designed


rg g to do one specificrgjob
g is called as
l alia.O
i. Or l alia.O
i . Or
(a) Loop (b)aBranching
a a(c)
a Function (d) Block
P a daadsas P a daadsas
. .P itself is called as ww . P
2. A Function which
ww
wcalls
ww w ww .
ww
(a) Built-in (b) Recursion (c) Lambda (d) return
3. Which function is called anonymous un-named function
(a) Lambda (b) Recursion (c) Function (d) define
4. Which of the following keyword is used to begin the function block?
rgrg rgrg
(a) define
slalia.O
(b)afor
s a i.O .O
lalia
a(c) i.O
finally
s s a (d) def
d a
d a
a akeyword d a
d a
aaafunction
5. Which of the following
.P.P is used to exit
.P.P block?
w w
w w wwww
(a) definew w (b) return ww (c) finally (d) def
6. While defining a function which r g g
r following symboli.O r gr g
a l
aa l iof
ia.O.Othe a l
a al ais
i.Oused.
sas ss
(a) ; (semicolon)
. P. adaad(b)
P . (dot) . P. adaada(c) : (colon)
P (d) $ (dollar)
w ww
w wwww
ww the correct positional
7. In which arguments ww order is passed to a function?
(a) Required (b) Keyword
i .O. rgrg
O (c) iDefault
.O . rgrg
O (d) Variable-length
a l
a al a i a l
a al a i
s s s s
. . adaada and choose the.Pcorrect
8. Read the following statement
P P . adaada statement(s).
P
(I) In Python, you
ww have to mention the
wdon‟t
w wwww
specific data types while defining function.
ww ww
(II) Python keywords can be used as function name.
(a) I is correct and II is wrong
(b) Both are correct
(c) I is wrong and II is correct
l ai .Org
(d) Both are wrong
a dasa
w.Pto execute the given statement successfully.
9. Pick the correctwone
w
if ____ : print(x, " is a leap year")
(a) x%2=0 (b) x%4==0 (c) x/4=0 (d) x%4=0
10. Which of the following keyword is used to define the function testpython(): ?
(a) define (b) pass (c) def (d) while

49
Section-B
Answer the following questions (2 Marks)
1. What is function?
Orgrg
 Functions are named blocks of code that are designed to do one specific job.salaalia. i.O laalia.
s sas
. P. adaada
P .P.P
a
adada
 Types of Functions are User defined, Built-in, lambda and recursion.
wwwwww ww
ww
ww
 Function blocks begin with the keyword “def ” followed by function name and parenthesis
Org ().
lai.
2. Write the different types of function. asa
w. Pad
TYPES OF FUNCTION:
ww

l a i.Org
sa
ada
ww.P
w

3. What are the main advantages of function?

 Main advantages of functions are ,


rgrg
laalia.O
i.O
o It avoids repetition and makes high degree of codeareusing.
aadadsas
.P.P
o It provides better modularity for your application.
ww
ww
ww
4. What is meant by scope of variable? Mention its types.

 Scope of variable refers to the part of the program, where it is accessible, i.e., area where you can
refer (use) it.
g and their values.
 Scope holds the current set of variables
alai.Or
d as
 The two types of scopes
.Pa are- local scope and global scope.
w w
5. Define globalwscope.

 A variable, with global scope can be used anywhere in the program.


 It can be created by defining a variable outside the scope of any function/block.
6. What is base condition in recursive function

 A recursive function calls itself.


 The condition that is applied in any recursive function is known as base condition.
 A base condition is must in every recursive function otherwise it will continue to execute like an
infinite loop.
50
rgrg
7. How to set the limit for recursive function? Give an example.
i.O.O
a s
a aslaalai
 Python stops calling recursive function afterP1000
d
a ad calls by default.
w . .P
w
w
www
 So, It also allows you to change the limit using sys.setrecursionlimit (limit_value).
 Example:
import sys
sys.setrecursionlimit(3000)
def fact(n):
if n == 0:
return 1
else:
return n * fact(n-1)
print(fact (2000))
Section-C
Answer the following questions (3 Marks)
1. Write the rules of local variable.

A variable with local scope can be accessed only within the function/block that it is created in.

When a variable is created inside the function/block, the variable becomes local to it.

A local variable only exists while the function is executing.

The formal arguments are also local to function.


2. Write the basic rules for global keyword in python.

The basic rules for global keyword in Python are:


i .O . rgrg
O
l
ala a i
When we define a variable
a d
a adsaasoutside a function, it‟s global by default. You don‟t have to use global
keyword. ww ww.P.P
ww
We use global keyword to read and rgrwrite
g a global variable rinside
grg a function.
l alia.Oi . O l alia.O
i. O
Use of global keyworda d
a adsaasa a function has anodaadeffect.
outside saasa
ww.P.P .P.P
ww
3. What happenswwwwhen
w we modify global wwwvariable
w inside the function?

If we modify the global variable , We can see the change on the global variable outside the function
also.
51
Example:
x=0 # global variable
def add():
global x
x=x+5 # increment by 2
print ("Inside add() function x value is :", x)
add()
print ("In main x value is :", x)

Output:
Inside add() function x value is : 5
In main x value is : 5 #value of x changed outside the
function

4. Differentiate ceil() and floor() function?


ceil() floor()

Returns the smallest integer greater than or Returns the largest integer less than or equal to
equal to x x

math.ceil math.floor
(x) (x)

5. Write a Python code to check whether a given year is leap year or not.
CODE:
n=int(input("Enter the year"))
if(n%4==0):
print ("Leap Year")
else:
print ("Not a Leap Year")
Output:

Enter the year 2012


Leap Year

52
g
i.Or
6. What is composition in functions?
d asala
The value returned a
w w.Pby a function may be used as an argument for another function in a nested
w
manner.

This is called composition.

For example, if we wish to take a numeric value as a input from the user, we take the input string
from the user using the function input() and apply eval() function to evaluate its value.

7. How recursive function works?

1. Recursive function is called by some external code.

2. If the base condition is met then the program gives meaningful output and exits.

3. Otherwise, function does some required processing and then calls itself to continue recursion.

8. What are the points to be noted while defining a function?


When defining functions there are multiple things that need to be noted;

Function blocks begin with the keyword “def” followed by function name and parenthesis ().
Any input parameters should be placed within these parentheses.
The code block always comes after a colon (:) and is indented.
The statement “return [expression]” exits a function, and it is optional.
A “return” with no arguments is the same as return None.
Section - D
Answer the following questions: (5 Marks)

1. Explain the different types of function with an example.


 Functions are named blocks of code that are designed to do one specific job.
 Types of Functions
 User defined Function
 Built-in Function
 Lambda Function
 Recursion Function

53
i) BUILT-IN FUNCTION:
Built-in functions are Functions that are inbuilt with in Python.
print(), echo() are some built-in function.
ii) USER DEFINED FUNCTION:
Functions defined by the users themselves are called user defined function.
 Functions must be defined, to create and use certain functionality.
 Function blocks begin with the keyword “def ” followed by function name and parenthesis ().
 When defining functions there are multiple things that need to be noted;
 Function blocks begin with the keyword “def” followed by function name and parenthesis ().
 Any input parameters should be placed within these parentheses.
 The code block always comes after a colon (:) and is indented.
 The statement “return [expression]” exits a function, and it is optional.
 A “return” with no arguments is the same as return None.
 EXAMPLE:
def area(w,h):
return w * h
print (area (3,5))
iii) LAMBDA FUNCTION:
In Python, anonymous function is a function that is defined without a name.
While normal functions are defined using the def keyword, in Python anonymous functions are
defined using the lambda keyword.
Hence, anonymous functions are also called as lambda functions.
rg g rg g
i.Or
USE OF LAMBDA OR ANONYMOUS
i.O FUNCTION:
aslaala i.Or
i.O aslaala
d a
d s
a d asa
d and one-time anonymous function.
Lambda function aisamostly
.P.P used for creating
a asmall
.P.P
w w w w w w
www www
Lambda functions are mainly used in combination with the functions like filter(), map() and
reduce().
EXAMPLE:
sum = lambda arg1, arg2: arg1 + arg2
print ('The Sum is :', sum(30,40))

54
print ('The Sum is :', sum(-30,40))

Output:
The Sum is : 70
The Sum is : 10
iv) RECURSIVE FUNCTION:
Functions that calls itself is knowni.O
asrg
.O rg
recursive.
a s
a aslaalai
adad function works
Overview of how recursive
w .P.P
w
ww is called by some external code.
1. Recursivewfunction
w
g
r g output and exits.
i.Or
ia.O
2. If the base condition is met then the program giveslameaningful
dadsaasal
a
.P.Pa
3. Otherwise, function does some required processing and then calls itself to continue recursion.
w ww
w
ww
2. Explain the scope of variables with an example.
Scope of variable refers to the part of the program, where it is accessible, i.e., area where you can
refer (use) it.
We can say that scope holds the current set of variables and their values.
There are two types of scopes - local scope and global scope.
 Local Scope:
A variable declared inside the function's body or in the local scope is known as local variable.
Rules of local variable:
A variable with local scope can be accessed only within the function/block that it is created in.
When a variable is created inside the function/block, the variable becomes local to it.
A local variable only exists while the function is executing.
The formal arguments are also local to function.
Example:
def loc():
y=0 # local scope
print(y)
loc()
Output:
0

55
 Global Scope
A variable, with global scope can be used anywhere in the program.
It can be created by defining a variable outside the scope of any function/block.
rg g
 Rules of global Keyword lalia.O
a a i.Or
adsas
adakeyword
The basic rules for global
w . P.P in Python are:
www
ww
When we define a variable outside a function, it‟s global by default. You don‟t have to use
global keyword.
We use global keyword to read and write a global variable inside a function.
Use of global keyword outside a function has no effect
Use of global Keyword
Without using the global keyword we cannot modify the global variable inside the function but
we can only access the global variable.
Example:
x=0 # global variable
def add():
global x
x=x+5 # increment by 2
print ("Inside add() function x value is :", x)
add()
print ("In main x value is :", x)

Output:
Inside add() function x value is : 5
In main x value is : 5 #value of x changed outside the function

56
3. Explain the following built-in functions.
(a) id() (b) chr() (c) round() (d) type() (e) pow()

Function Description Syntax Example


Return the “identity” of id (object) x=15
id ( ) an object. i.e. the address y='a'
of the object in memory. print ('address of x is :',id (x))
print ('address of y is :',id (y))
Output:
address of x is : 1357486752
address of y is : 13480736
Returns the Unicode c=65
chr ( ) character for the given chr print (chr
ASCII value. (i) (c))
Output:
A

round ( ) Returns the nearest round x= 17.9


integer to its input. (number print ('x value is rounded to',
1. First argument [,ndigits]) round (x))
(number) is used to
specify the value to be
Output:
rounded.
X value is rounded to 18

type ( ) Returns the type of type x= 15.2


object for the given (object) print (type
single object. (x))
Output:
<class
'float'>

g pow ( ) Returns the pow a= 5


computation of a,b i.e. (a,b) b= 2
(a**b ) a raised to the print (pow (a,b))
power of b.
g Output:
25

57
4. Write a Python code to find the L.C.M. of two numbers.
CODE:
x=int(input("Enter first number:"))
y=int(input("Enter second number:"))
if x>y:
min=x
else:
min=y
while(1):
y l==
if((min%x == 0) and (min %sa
.Org
ai 0)):
. P ada
print("LCM w
is:",min)
w
w
break
min=min+1
OUTPUT:
Enter first number:2
Enter second number:3
LCM is: 6
5. Explain recursive function with rgrgexample.
ai.Oi.an
O
d a
d saaslala
 Functions that calls.P a a is known as recursive.
w wwitself
w
.P
ww
 When a function calls itself is known as recursion.
 Recursion works like loop but sometimes it makes more sense to use recursion than loop.
 Imagine a process would iterate indefinitely if not stopped by some condition is known as infinite
iteration.
 The condition that is applied in any recursive function is known as base condition.
 A base condition is must in every recursive function otherwise it will continue to execute like an
infinite loop.
 Python stops calling recursive function after 1000 calls by default.
 So, It also allows you to change the limit using sys.setrecursionlimit (limit_value).

58
Overview of how recursive function works: i . O . rgrg
O i . O. rgrg
O
l al a i l al a i
a d
a adsaasa a d
a adsaasa
1. Recursive function is called by some external
.P.Pcode. .P.P
wwww wwww
ww ww
2. If the base condition is met then the program gives meaningful output and exits.

3. Otherwise, function does some required processing and then calls itself to continue recursion.
EXAMPLE:

def fact(n):
if n == 0:
return 1
else:
return n * fact (n-1)
print (fact (0))
print (fact (5))
Output:
1
120

59
8. STRINGS AND STRING MANIPULATION
Section – A
Choose the best answer (1 Mark)
1. Which of the following is the output of the following python code?
str1="TamilNadu"
print(str1[::-1])
(a) Tamilnadu (b) Tmlau (c) udanlimaT d) udaNlimaT
2. What will be the output of the following code?
str1 = "Chennai Schools"
str1[7] = "-"
(a) Chennai-Schools (b) Chenna-School (c) Type error (d) Chennai
3. Which of the following operator is used for concatenation?
(a) + (b) & (c) * (d) =

.OOrgrallows
4. Defining strings within triple quotes g creating:
sasalaliai.
(a) Single line Strings
adada (b) Multiline Strings
.P.Pa
wStrings
w
w
(c) Doublewline
w w (d) Multiple Strings
5. Strings in python: rgrg
l alia.O
i. O
(a) Changeable (b) Mutable a a (c) Immutable (d) flexible
P a daadsas
ww . .P
6. Which of the following is the slicing operator?
ww
ww
(a) { } (b) [ ] (c) < > (d) ( )
7. What is stride?
(a) index value of slide operation (b) first argument of slice operation
(c) second argument of slice operation (d) third argument of slice operation
8. Which of the following formatting character is used to print exponential notation in upper case?
(a) %e (b) %E (c) %g (d) %n
9. Which of the following is used as placeholders or replacement fields which get replaced along with
format( ) function?
(a) { } (b) < > (c) ++ (d) ^^
10. The subscript of a string may be:
(a) Positive (b) Negative (c) Both (a) and (b) (d) Either (a) or (b)

60
Section-B
Answer the following questions (2 Marks)
1. What is String?
 String is a data type in python, usedrgrtog handle array of characters.
a
 String is a sequence of characters
a l lia.O O may be a combination of letters, numbers, or special
i.that
a s
a s a
adadsingle,
symbols enclosedwwithin
.P.P double or even triple quotes.
w ww w
w
2. Do you modify a string in Python?
 Yes we can modify the string by the following method,
 A new string value can be assign to the existing string variable.
 When defining a new string value to the existing string variable.
 Python completely overwrite new string on the existing string.
3. How will you delete a string in Python?
 Python will not allow deleting a particular character in a string.
 Whereas you can remove entire string variable using del command.
 Example:
del str1[2]
4. What will be the output of the following python code?
str1 = “School”
print(str1*3)
OUTPUT:
School School School
5. What is slicing?
 Slice is a substring of a main string.
 A substring can be taken from the original grg string by using [ ] slicing operator and index or subscript
. O r
O
values.
asaaslaaliai.
 Using slice operator, adadhave to slice one or more substrings from a main string.
.P.you
P
wwww
ww
General format of slice operation:
str[start:end]
Section-C
Answer the following questions (3 Marks)
1. Write a Python program to display the given pattern
COMPUTER
COMPUTE
COMPUT
COMPU
COMP
COM
CO
C

61
CODE:
str="COMPUTER"
index=len(str)
for i in str:
print(str[:index])
index-=1

2. Write a short about the followings


rgwith suitable example: (a) capitalize( ) (b) swapcase( )
ala i.O
FUNCTION PURPOSE EXAMPLE
das
.Pa
ww Used to capitalize the first character of the >>> city="chennai"
capitalize( ) w string >>> print(city.capitalize())
Output:
Chennai
It will change case of every character to its >>> str1="tAmiL NaDu"
swapcase( ) opposite case vice-versa. >>> print(str1.swapcase())
Output:
TaMIl nAdU

3. What will be the output of the given python program?


CODE:
str1 = "welcome"
str2 = "to school"
str3=str1[:2]+str2[len(str2)-2:]
print(str3)
OUTPUT:
weol

4. What is the use of format( )? Give an example.


 The format( ) function used with strings is very powerful function used for formatting strings.
 The curly braces { } are used as placeholders or replacement fields which get replaced along with
format( ) function.
EXAMPLE:
num1=int (input("Number 1: "))
num2=int (input("Number 2: "))
print ("The sum of { } and { } is { }".format(num1, num2,(num1+num2)))

62
OUTPUT:
Number 1: 34
Number 2: 54
The sum of 34 and 54 is 88

5. Write a note about count( ) function in python.


 Returns the number of substrings occurs within the given range.
 Remember that substring may be a single character.
 Range (beg and end) arguments are optional. If it is not given, python searched in whole string.
 Search is case sensitive.
SYNTAX:

count(str, beg, end


EXAMPLE:
>>> str1="Raja Raja Chozhan"
>>> print(str1.count('Raja'))
OUTPUT: 2
Section - D

Answer the following questions: (5 Marks)


1. Explain about string operators in python with suitable example.
STRING OPERATORS
Python provides the following string operators to manipulate string.
(i) Concatenation (+)
 Joining of two or more strings using plus (+) operator is called as Concatenation.
Example
>>> "welcome" + "Python"
Output: 'welcomePython'
(ii) Append (+ =)
 Adding more strings at the end of an existing string using operator += is known as append.
Example:
>>> str1="Welcome to "
>>> str1+="Learn Python"
>>> print (str1)
Output: Welcome to Learn Python
63
(iii) Repeating (*)
 The multiplication operator (*) is used to display a string in multiple number of times.
Example:
>>> str1="Welcome "
>>> print (str1*4)
Output: Welcome Welcome Welcome Welcome
(iv) String slicing
 Slice is a substring of a main string.
 A substring can be taken from the original string by using [ ] slicing operator and index values.
 Using slice operator, you have to slice one or more substrings from a main string.
General format of slice operation:
str[start:end]
 Where start is the beginning index and end is the last index value of a character in the string.
 Python takes the end value less than one from the actual index specified.
g
r rg a string
laia.O
Example: slice a single character
saasal
ifrom
.O
d
aaad
>>> str1="THIRUKKURAL"
.P.P
wwww
ww
>>> print (str1[0])
Output: T
(v) Stride when slicing string
 When the slicing operation, you can grg specify a third argument as the stride, which refers to the
. O r
O
number of characters to move laliai.
asaasaforward after the first character is retrieved from the string.
adad
 The default value ..PP
wofwstride is 1.
wwww
 Python takes the last value as n-1
 You can also use negative value as stride, to prints data in reverse order.
Example:
>>> str1 = "Welcome to learn Python"
>>> print (str1[10:16])
>>> print(str1[::-2])
Output: Learn
nhy re teolW
64
9. LISTS, TUPLES, SETS, AND DICTIONARY
Section – A
Choose the best answer (1 Mark)
1. Pick odd one in connection with collection data type
(a) List (b) Tuple (c) Dictionary (d) Loop
2. Let list1=[2,4,6,8,10], then print(List1[-2]) will result in
(a) 10 (b) 8 (c) 4 (d) 6
3. Which of the following function is used to count the number of elements in a list?
(a) count() (b) find() (c)len() (d) index()
4. If List=[10,20,30,40,50] then List[2]=35 will result
g
(a) [35,10,20,30,40,50] (b) [10,20,30,40,50,35]
ala i.Or
(c) [10,20,35,40,50] (d) [10,35,30,40,50]
a s
ad
5. If List=[17,23,41,10] then List.append(32) will.Presult
w
(a) [32,17,23,41,10] ww
(b) [17,23,41,10,32] (c) [10,17,23,32,41] (d) [41,32,23,17,10]
6. Which of the following Python function can be used to add more than one element within an
Existing list?
(a) append() (b) append_more() (c)extend() (d) more()
7. What will be the result of the following Python code?
S=[x**2 for x in range(5)]
print(S)
(a) [0,1,2,4,5] (b) [0,1,4,9,16] (c) [0,1,4,9,16,25] (d) [1,4,9,16,25]
8. What is the use of type() function in python?
(a) To create a Tuple (b) To know the type of an element in tuple.
ila.O .Orgrg i . O . rgrg
O
(c) To know the data type of apythonlaa i object. l a To
a i
asal create a list.
(d)
d a s
a s d a sa
a ad
.P.P a ad
.P.P
9. Which of the following
w ww statement is not correct?
w w w
www www
(a) A list is mutable rgrg rgrg
l al i
a .O
i . O l alia.Oi . O
a aadsaasa
(b) A tuple is immutable.
d a d
a adsaasa
.P.P
ww ww.P.P
(c) The append()
ww ww function is used w tow
wadd
w an element.
(d) The extend() function is used in tuple to add elements in a list.

65
10. Let setA={3,6,9}, setB={1,3,9}. What will be the result of the following snippet?
print(setA|setB)
(a) {3,6,9,1,3,9} (b) {3,9} (c) {1} (d) {1,3,6,9}
11. Which of the following set operation includes all the elements that are in two sets but not the one
that are common to two sets?
(a) Symmetric difference (b) Difference (c) Intersection (d) Union
12. The keys in Python, dictionary is specified by
(a) = (b) ; (c)+ (d) :
Section-B
Answer the following questions (2 Marks)
1. What is List in Python?
 A list is an ordered collection of values enclosed within square brackets [ ] also known as a
“sequence data type”.
 Each value of a list is called as element.
 Elements can be a numbers, characters, strings and even the nested lists.
 Syntax: Variable = [element-1, element-2, element-3 …… element-n]
2. How will you access the list elements in reverse order?
 Python enables reverse or negative indexing for the list elements.
 A negative index can be used to access an element in reverse order.
 Thus, python lists index in opposite order.
 The python sets -1 as the index value rgrgfor the last element in list and -2 for the preceding element and
i . O
i. O
so on.
d a
d saaslaala
 This is called as Reverse
a a Indexing.
.P.P
3. What will bewthewwwvalue
w of x in following python code?
w
List1=[2,4,6,[1,3,5]]
x=len(List1)
print(x)
OUTPUT:
====== RESTART: C:/Users/SANJANASRI.SANJANASRI-PC/Desktop/Python/LI.py ======
4
>>>
4. Differentiate del with remove( ) function of List.
del remove( )
del statement is used to delete known elements remove( ) function is used to delete elements of
a list if its index is unknown.
The del statement can also be used to delete The remove is used to delete a particular element
entire list.

66
5. Write the syntax of creating a Tuple with n number of elements.
Syntax:
Tuple_Name = (E1, E2, E2 ……. En) # Tuple with n number elements
Tuple_Name = E1, E2, E3 ….. En # Elements of a tuple without parenthesis

6. What is set in Python?


 In python, a set is another type of collection data type.
 A Set is a mutable and an unordered collection of elements without duplicates or repeated element.
 This feature used to include membership testing and eliminating duplicate elements.
Section-C
Answer the following questions rg (3 Marks)
s alai.O
1. What are the difference between list & table?
. P ada
w
List ww Tables
i .O . rgrg
O
* A List is an ordered collection of values * Tubles consists of a numbersof l
asa ala i
values separated
enclosed within square bracket [ ] by comma and enclosed d ad a
awithin
a parentheses ( )
.P.P
w
* The elements in a list are mutable w wwww
* The elements in Tables are immatable
* Iterating list is slower * I terating tables is faster
g Eg. : Var = [ 1, 2, 3 ] Eg. : Tap = ('red', 'green', 'blue')

2. Write a short note about sort( ). rgrg


a i . O
i. O
sort ( ):
d a
d saaslala
g a
.P.Pa
 It sorts the element in list. w ww
w
ww
 sort( ) will affect the original list.
Syntax : List.sort(reverse=True|False, key=myFunc)
Description of the Syntax:
Both arguments are optional ,
 If reverse is set as True, list sorting is in descending order.
 Ascending is default.
 Key=myFunc; “myFunc” - the name of the user defined function that specifies the sorting
criteria.

67
3. What will be the output of the following code?
list = [2**x for x in range(5)]
print(list)
OUTPUT: [1, 2, 4, 8, 16]

4. Explain the difference between del and clear( ) in dictionary with an example.
del clear( ) rgrg
The del statement is used to delete known The function clear( ) is usedsto l alia.O
i
delete. O
all the
a aasa
elements elements in list aad d
.P.P
ww
ww
ww
The del statement can also be used to delete It deletes only the elements and retains the list.
entire list.

5. List out the set operations supported by python.


Set Operations:
(i) Union: It includes all elements from two or more sets.
(ii) Intersection: It includes the common elements in two sets.
(iii) Difference: It includes all elements that are in first set (say set A) but not in the second set (say set
B).
iv) Symmetric difference: It includes all the elements that are in two sets (say sets A and B) but not
the one that are common to two sets.
6. What are the difference between List and Dictionary?
rgrg
OO
Listsaslaalia. i. Dictionary
dad a
 A list is an ordereda a collection of values or  A dictionary is a mixed collection of
.P.P
wwww
elements ofwany
w type . elements and it stores a key along with its
element.
 It is enclosed within square brackets [ ]  The key value pairs are enclosed with curly
braces { }.
 Syntax:  Syntax of defining a dictionary:
Variable = [element-1, element-2, element-3 Dictionary_Name = { Key_1: Value_1,
…… element-n] Key_2:Value_2,
……..
Key_n:Value_n
} rgrg
a i . O
i. O
 The commas work as a separator for the  The keys in a Python l a
a a dictionary is
l
elements. separated by a.P a daads(a:s) while the commas
colon
wwww.P
work as waw
separator for the elements.

68
Section - D
Answer the following questions: (5 Marks)
1. What the different ways to insert an element in a list. Explain with suitable example.
Inserting elements in a list using insert():
 The insert ( ) function helps you to include an element at your desired position.
 The insert( ) function is used to insert an element at any position of a list.
Syntax:
List.insert (position index, element)
Example:
>>> MyList=[34,98,47,'Kannan', 'Gowrisankar', 'Lenin', 'Sreenivasan' ]
. O rg
>>> MyList.insert(3,l a i 'Ramakrishnan')
d asa
>>> print(MyList)
a
P
w.47,
Output: [34,
w w98, 'Ramakrishnan', 'Kannan', 'Gowrisankar', 'Lenin', 'Sreenivasan']
 In the above example, insert( ) function inserts a new element „Ramakrishnan‟ at the index value 3,
th
ie. at the 4 position.
 While inserting a new element, the existing elements shifts one position to the right.
Adding more elements in a list using append():
 The append( ) function is used to add a single element in a list.
 But, it includes elements at the end of a list.
Syntax:
List.append (element to be added)
Example:
>>> Mylist=[34, 45, 48]
>>> Mylist.append(90)
>>> print(Mylist)
Output: [34, 45, 48, 90]
Adding more elements in a list using extend():
 The extend( ) function is used to add more than one element to an existing list.
 In extend( ) function, multiple elements should be specified within square bracket as arguments of
the function.
Syntax:
List.extend ( [elements to be added])
Example:
>>> Mylist=[34, 45, 48]
>>> Mylist.extend([71, 32, 29])
>>> print(Mylist)
Output: [34, 45, 48, 90, 71, 32, 29]
69
2. What is the purpose of range( )? Explain with an example.
range():
 The range( ) is a function used to generate a series of values in Python.
 Using range( ) function, you can create list with series of values.
 The range( ) function has three arguments.

Syntax of range ( ) function:


range (start value, end value, step value)
where,
 start value – beginning value of series. Zero is the default beginning value.
 end value – upper limit of series. Python takes the ending value as upper limit – 1.
 step value – It is an optional i . O. rgrg
argument,
O which is used to generate different interval of values.
a l
aal a i
Example : Generating whole
P adaadsasnumbers upto 10
ww
for x in range (1,w11): .. P
ww
w
print(x)
Output:
1
2
3
4
5
6
7
8
9
10
Creating a list with series of values

 Using the range( ) function, you can create a list with series of values.
 To convert the result of range( ) function into list, we need one more function called list( ).
 The list( ) function makes the result of range( ) as a list.
Syntax:
List_Varibale = list ( range ( ) )
Example :
g .O r rg
>>> Even_List = list(range(2,11,2))
O
lali
a i .
a d
a adsaasa
>>> print(Even_List)
ww .P.P
Output: www
[2,w4, 6, 8, 10]

 In the above code, list( ) function takes the result of range( ) as Even_List elements.
 Thus, Even_List list has the elements of first five even numbers.
70
3. What is nested tuple? Explain with an example.
Tuple:
 Tuples consists of a number of values separated by comma and enclosed within parentheses.
 Tuple is similar to list, values in a list can be changed but not in a tuple.
Nested Tuples:
 In Python, a tuple can be defined inside another tuple; called Nested tuple.
 In a nested tuple, each tuple is considered as an element.
 The for loop will be useful to access all the elements in a nested tuple.
Example:
Toppers = (("Vinodini", "XII-F", 98.7), ("Soundarya", "XII-H", 97.5), ("Tharani", "XII-F",
95.3), ("Saisri", "XII-G", 93.8))
for i in Toppers:
print(i)

Output:
('Vinodini', 'XII-F', 98.7)
('Soundarya', 'XII-H', 97.5)
('Tharani', 'XII-F', 95.3)
('Saisri', 'XII-G', 93.8)

4. Explain the different set operations supported by python with suitable example.
 A Set is a mutable and an unordered collection of elements without duplicates.
Set Operations:
 The set operations such as Union, Intersection, difference and Symmetric difference.
(i) Union:
 It includes all elements from two or more sets.
 The operator | is used to union of two sets.
 The function union( ) is also used to join two sets in python.

Example:
set_A={2,4,6,8}
set_B={'A', 'B', 'C', 'D'}
U_set=set_A|set_B
print(U_set)
Output:
{2, 4, 6, 8, 'A', 'D', 'C', 'B'}
71
(ii) Intersection:
 It includes the common elements in two sets.
 The operator & is used to intersect two sets in python.
 The function intersection( ) is also used to intersect two sets in python.
rg
s a lai.O
ada
w.P
ww

Example:
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A & set_B)
Output:
{'A', 'D'}

(iii) Difference:
 It includes all elements that are in first set (say set A) but not in the second set (say set B).
 The minus (-) operator
rg g
i.Or
 The function difference( ) is also used to difference operation.
laia.O
d a
d saasal
aa
.P.P
w ww
w
ww

Example:
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A - set_B)

Output:
{2, 4}

(iv) Symmetric difference


 It includes all the elements that are in two sets (say sets A and B) but not the one that are common
to two sets.
 The caret (^) operator is used to symmetric difference set operation in python.
 The function symmetric_difference( ) is also used to do the same operation.

72
Example:
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A ^ set_B)

Output:
{2, 4, 'B', 'C'}

73
g
10. PYTHON CLASSES AND OBJECTS
Section – A
Choose the best answer (1 Mark)
1. Which of the following are the key features of an Object Oriented Programming language?
(a) Constructor and Classes (b) Constructor and Object
(c) Classes and Objects (d) Constructor and Destructor
2. Functions defined inside a class:
(a) Functions (b) Module (c) Methods (d) section
3. Class members are accessed through which operator?
(a) & (b) . (c) # (d) %
4. Which of the following method is automatically executed .Org
lai when an object is created?
a d asa
(a) __object__( ) (b) __del__( ) w.P (c) __func__( ) (d) __init__( )
ww
5. A private class variable is prefixed with
(a) __ (b) && (c) ## (d) **
6. Which of the following method is used as destructor?
(a) __init__( ) (b) __dest__( ) (c) __rem__( ) (d) __del__( )
7. Which of the following class declaration is correct?
(a) class class_name (b) class class_name<> (c) class class_name: (d) class class_name[
]
8. Which of the following is the output of the following program?
class Student:
def __init__(self, name):
self.name=name
S=Student(“Tamil”)
(a) Error (b) Tamil (c) name (d) self
9. Which of the following is the private class variable?
(a) __num (b) ##num (c) $$num (d) &&num
10. The process of creating an object is called as:
(a) Constructor (b) Destructor (c) Initialize (d) Instantiation

74
Section-B
Answer the following questions (2 Marks)
1. What is class?

 Class is the main building block in Python.


 Class is a template for the object.
 Object is a collection of data and function that act on those data.
 Objects are also called as instances of a class or class variable.
2. What is instantiation?

 The process of creating object is called as “Class Instantiation”.


Syntax:
Object_name = class_name( )
3. What is the output of the following program?
class Sample:
__num=10
def disp(self):
print(self.__num)
S=Sample()
S.disp()
print(S.__num)
OUTPUT:
>>>
10
line 7, in <module>
print(S.__num)
AttributeError: 'Sample' object has no attribute '__num'
>>>
4. How will you create constructor in Python?

 “init” is a special function begin and end with double underscore in Python act as a Constructor.
 Constructor function will automatically executed when an object of a class is created.
General format:

def __init__(self, [args ……..]):

<statements>

75
5. What is the purpose of Destructor?
 Destructor is also a special method gets executed automatically when an object exit from the scope.
 In Python, __del__( ) method is used as destructor.
General format:

def __del__(self):
<statements>
Section-C
Answer the following questions rgrg (3 Marks)
a i . O
i. O
1. What are class members?
dad slala do you define it?
saaHow
a
.P.Pa
wwww
 Variables defined
ww inside a class are called as “Class Variable” and functions are called as
“Methods”.
 Class variable and methods are together known as members of the class.
 The class members should be accessed through objects or instance of class.
 A class can be defined anywhere in a Python program.
 SYNTAX FOR DEFINING A CLASS:
class class_name:
statement_1
statement_2
…………..
…………..
statement_n
2. Write a class with two private class variables and print the sum using a method.
CODE:
class Sample:
def __init__(self,n1,n2):
self.__n1=n1
self.__n2=n2
g def sum(self):
print("Class Variable 1:",self.__n1)

76
print("Class Variable 2:",self.__n2)
print("Sum:",self.__n1 + self.__n2)
S=Sample(5,10)
S.sum()

OUTPUT:
>>>
Class Variable 1: 5
Class Variable 2: 10
Sum: 15
>>>
3. Find the error in the following program to get the given output?
ERROR CODE:
class Fruits:
def __init__(self, f1, f2):
self.f1=f1
self.f2=f2
def display(self):
print("Fruit 1 = %s, Fruit 2 = %s" %(self.f1, self.f2))
F = Fruits ('Apple', 'Mango')
del F.display
F.display()
OUTPUT:

Fruit 1 = Apple, Fruit 2 = Mango

ERROR:
line 8, in <module>
del F.display
AttributeError: display
77
CORRECT CODE:
class Fruits:
def __init__(self, f1, f2):
self.f1=f1
self.f2=f2
def display(self):
print("Fruit 1 = %s, Fruit 2 = %s" %(self.f1, self.f2))
F = Fruits ('Apple','Mango')
F.display()

OUTPUT:

Fruit 1 = Apple, Fruit 2 = Mango

4. What is the output of the following program?


CODE:
class Greeting:
rgrg
s a laalia.Oi.O
adef as
daad__init__(self, name):
ww. P. P
ww
ww self.__name = name
g
i . O
def display(self): . rgrg
O
a i
d adsaaslala
a a
.P.Pprint("Good Morning ", self.__name)
w ww
w
ww
obj=Greeting('Bindu Madhavan')
g
obj.display()

g
Output:
>>>
g rg
Good Morning
ai.O Bindu Madhavan
sal
d a
w. Pa>>>
ww 78
g
5. How do define constructor and destructor in Python?
CONSTRUCTOR:
 “init” is a special function begin and end with double underscore in Python act as a Constructor.
 Constructor function will automatically executed when an object of a class is created.
General format of constructor:

def __init__(self, [args ……..]):

<statements>
DESTRUCTOR:
 Destructor is also a special method gets executed automatically when an object exit from the scope.
 In Python, __del__( ) method is used as destructor.
General format of destructor:

def __del__(self):
<statements> Section - D
1. Explain about constructor and destructor with suitable example.
Constructor :
• Constructor is the special function called “init” which act as a constructor.
• This function will executes automatically when the object is created.
• It must begin and end with double underscore.
• It can be defined with (or) without arguments.
Syntax :
def ___ init ___ (self, [ args ……… ]) :
< statements >

Destructor :

• Destructor is also a special method gets executed automatically when an object


exit from the scope.
• ___ d el ___ ( ) method is used as destructor.
Syntax :

def ___ def ___ (self) :


< statements >

79
Example :
Class sample :
def ___ init ___ (self, num) :
Print (“constructor of class sample….”)
self.num = num
print (“The value is : “, num)
def ___del___ (self) :
Print (“Destructor of class sample”)
S = sample (10)

The class “Sample” has a constructor which executed automatically, when an object S is created
with actual parameter 10. rg
s a lai.O
• da sample..”
When the constructor gets executed, it prints the “Constructor ofaClass
w .P
w
• The passing value of the constructor is assigned to self . w
nam and it prints the value passed.

• Finally the destructor executed and it prints the statements given.

OUTPUT :

Constructor of class sample …


Org
sa lai.
The value is : 10.Pada
w
ww
Desctructor of class sample ….

80
11. DATABASE CONCEPTS
Section – A
Choose the best answer (1 Mark)
1. What is the acronym of DBMS?
a) DataBase Management Symbol b) Database Managing System
c) DataBase Management System d) DataBasic Management System
2. A table is known as
a) tuple b) attribute c) relation rg d)entity
l a i . O
3. Which database model represents parent-child relationship?
asad
a) Relational b) Network w .Pc)a Hierarchical d) Object
ww
4. Relational database model was first proposed by
a) E F Codd b) E E Codd c) E F Cadd d) E F Codder
5. What type of relationship does hierarchical model represents?
a) one-to-one b) one-to-many c) many-to-one d) many-to-many
6. Who is called Father of Relational Database from the following?
a) Chris Date b)Hugh Darween c) Edgar Frank Codd d) Edgar Frank Cadd
7. Which of the following is an RDBMS?
a) Dbase b) Foxpro c) Microsoft Access d) Microsoft Excell
8. What symbol is used for SELECT statement?
a) σ b) Π c) X d) Ω
9. A tuple is also known as
a) table b) row c) attribute d) field
10. Who developed ER model?
a) Chen b) EF Codd c) Chend d) Chand
Section-B
Answer the following questions (2 Marks)
1. Mention few examples of a database.
 Foxpro
 dbase.
 IBM DB2.
 Microsoft Access.
 Microsoft Excel.
 MySQL.
81
2. List some examples of RDBMS.
 SQL Server
 Oracle
 MySQL
 MariaDB
 SQLite
3. What is data consistency?
 Data Consistency means that data values are the same at all instances of a database.
 On live data, it is being continuously updated and added, maintaining the consistency of data can
become a challenge.
 But DBMS handles it by itself.
4. What is the difference between Hierarchical and Network data model?
Hierarchical data model Network data model
 In hierarchical model, a child record has  In a Network model, a child may have
only one parent node many parent nodes.

 It represents one-to-one relationship called  It represents the data in many-to-many


parent-child relationship in the form of tree relationships.
structure.
5. What is normalization?
 Normalization is an integral part of RDBMS in order to reduce data redundancy and improve data
integrity.
Section-C
Answer the following questions (3 Marks)
1. What is the difference between Select and Project command?
. O rg . O. Orgrg
Select Command a i Project Command a i i
da sal d a saaslala
 The SELECT operation .P a is used for selecting  The projection method a
.P.Pa d
defines a relation that
w w w
a subset withww tuples according to a given wwsubset of Relation.
contains a vertical
ww
condition C. rgrg
l a ia. O
i . O
 Select filters out all tuples that do not satisfy  The projection eliminatesasall l
a d
a d aasaattributes of the
C. input relation w but
ww.Pthose
.P mentioned in the
w w
projection list. w
Symbol : i .O . rgrg
O Symbol :
alaal a i
s s Π
.P.Pa σad daa
w
General Form:ww w
w w Example:
σ (R)
c
i .O. rgrg
O i .O. rgrg
O
Example: l
asa al a i l
asa al a i Π (STUDENT)
asa a s
a course
σ = “Big w
Data”ada(STUDENT
.P.P d adad
) w.P.P
course ww
ww w ww
ww w
82
2. What is the role of DBA?
 Database Administrator or DBA is the one who manages the complete database management
system.
 DBA takes care of the security of the DBMS, managing the license keys, managing user accounts
and access etc.
3. Explain Cartesian Product with a suitable example.
 Cross product is a way of combining two relations.
 The resulting relation contains, both relations being combined.
l a i.Org
 This type of operation is helpful to merge columns a
P a dasfrom two relations.
 Example: A x B means A times B, where .
w wwthe relation A and B have different attributes.
4. Explain Object Model with example.
rg g
a l alia.O
i .Or
 Object model stores the sasain the form of objects, attributes and methods, classes and Inheritance.
daaddata
P a
P
. .more complex applications, such as Geographic information System (GIS),
 This model handles
wwww
ww
scientific experiments, engineering design and manufacturing.
 It is used in file Management System.
 It represents real world objects, attributes and behaviors.

i .O. rgrg
O
lal a i
a d
a adsaasa
.P.P
ww
ww
ww
g gg r r on different types of DBMS users.
5. Write l a lia.O
a i O
note
.
aa
P a daadsas Administrators
Database
ww. .P
ww
ww  Database Administrator or DBA is the one who manages the complete database management system.
g Application Programmers grg or Software Developers
. O Or
 This
s liai. group is involved in developing and designing the parts of DBMS.
aslaauser
a a
dad User
aEnd
ww.P.P
ww
ww  End users are the one who store, retrieve, update and delete data.
Database designers:
 They are responsible for identifying the data to be stored in the database for choosing appropriate
structures to represent and store the data.

Section - D
Answer the following questions: (5 Marks)
1. Explain the different types of data model.
Data Model
A data model describes how the data can be represented and accessed from a software after
complete implementation
83
Types of Data Model
The different types of a Data Model are,
 Hierarchical Model
 Relational Model
 Network Database Model
 Entity Relationship Model
 Object Model
i). Hierarchical Model:
 In Hierarchical model, data is represented as a simple tree like structure form.
 This model represents a one-to-many relationship ie parent-child relationship.
 One child can have only one parent but one parent can have many children.
 This model is mainly used in IBM Main Frame computers.
 Example:

ii). Relational Model


 The Relational Database model was first proposed by E.F. Codd in 1970 .
 The basic structure of data in relational model is tables (relations).
 All the information‟s related to a particular type is stored in rows of that table.
 Hence tables are also known as relations in a relational model.
 A relation key is an attribute which uniquely identifies a particular tuple (row in a relation (table)).

 Example:

i .O .Orgrg
l al a i
adaadsaasa
.P.P
ww
ww
ww

84
iii.) Network Model

 Network database model is an extended form of hierarchical data model.


 In a Network model, a child may have many parent nodes.
rg
 It represents the data in many-to-many relationships.alai.O
as
 This model is easier and faster to access the Pad
w.data.
ww

iv.) Entity Relationship Model. (ER model)


 In this database model, relationship are created by dividing the object into entity and its
characteristics into attributes.
 It was developed by Chen in 1976. .Org
l a i
 ER model constructed dby,
a asa
 Rectangle w w.P
represents the entities.
w
 Ellipse represents the attributes rgr.g
 Attributes describes the i
ala .Oi .O
d a
d saaslacharacteristics and each entity.
 Diamond representsa a the relationship in ER diagrams
.P.P
w ww
w
 Example:ww Doctor diagnosis the Patient.

v.) Object Model


 Object model stores the data in the form of objects, attributes and methods, classes and Inheritance.
 This model handles more complex applications, such as Geographic information System (GIS),
scientific experiments, engineering design and manufacturing.

85
Example:

2. Explain the different types of relationship mapping.


Types of Relationships : There are the types of relationships used in a database.

1. One-to-One Relationship
2. One-to-Many Relationship
3. Many-to-One Relationship
4. Many-to-Many Relationship
i.) One-to-One Relationship:
 In One-to-One Relationship, one entity is related with only one other entity.
 One row in a table is linked with only one row in another table and vice versa.
rg g
 For Example: A student can have only one exam number.
i.Or
i.O
d a
d saaslaala
aa
.P.P
w ww
w
ww
i. O .Orgrg
a i
d a
d saaslala
a
.P.Pa
wwww
ww

ii. One-to-Many Relationship:


 In One-to-Many relationship, one
rgrgentity is related to many
rgrgother entities.
a l alia.O
i.O a lalia.O
i.O
a s s a a s s a
 One row in a table Adisa linked to many rows
ada adaindaa table B, but one row in a table B is linked to
w .P.P
w ww.P.P
only one w wwin table A.
row
w ww
ww
 For Example: One Department has many staff members.

86
iii. Many-to-One Relationship:
 In Many-to-One Relationship, many entities can be related with only one in the other entity.
 For Example: A number of staff members working in one Department.
 Multiple rows in staff members table is related with only one row in Department table.
g
a l ai.Or
s
ada
w.P
ww

4. Many-to-Many Relationship:
.Org
a s alai occurs when multiple records in a table are associated with
 A many-to-many relationship
adanother table.
.Pin
multiple records
w w
 Example:wBooks and Student :Many Books in a Library are issued to many students.
g
a l ai.Or
P adas
w .
ww

87
3. Differentiate DBMS and RDBMS.

Basis of Comparison DBMS RDBMS

Expansion Database Management System Relational DataBase


Management System

Data storage Navigational model Relational model (in tables). ie


ie data by linked records data in tables as row and
column

Data redundancy Exhibit Not Present


i . O . rgrg
O
Normalization Not performed RDBMS uses a i
d adsaasnormalization
lala to
reduce redundancy
a
.P.Pa
w ww
w
ww
Data access Consumes more time Faster, compared to DBMS.
i . O . rgrg
O
l al a i
Keys and indexes Does not use. adsaasa relationship.
Used toaestablish
d
a
ww P.P used in RDBMS.
.are
wKeys
ww
w
Transaction management Inefficient, Efficient and secure.
Error prone and insecure.

Distributed Databases Not supported Supported by RDBMS.


l a i .Org
Example Dbase, FoxPro. SQL server, a
P a dasOracle, mysql,
MariaDB,
w. SQLite.
ww

4. Explain the different operators in Relational algebra with suitable examples.


 Relational Algebra is used for modeling data stored in relational databases and for defining queries
on it.
 Relational Algebra is divided into various groups.
1) Unary Relational Operations
 SELECT ( symbol : σ)
 PROJECT ( symbol : Π) .Org
as alai from Set Theory
2) Relational Algebra Operations
ad
 UNION (∪)ww.P
w
 INTERSECTION (∩)
 DIFFERENCE (−)
 CARTESIAN PRODUCT (X)
88
 SELECT (symbol : σ)
 General form σ ( R ) with a relation R and a condition C on the attributes of R.
c

 The SELECT operation is used for selecting a subset with tuples according to a given condition.
 Select filters out all tuples that do not satisfy C.
 Example: σ = “Big Data” (STUDENT )
course
 PROJECT (symbol : Π)
 The projection eliminates all attributes of the input relation but those mentioned in the projection
list.
 The projection method defines a relation that contains a vertical subset of Relation.

 Example: Π (STUDENT)
course
 UNION (Symbol :∪) A U B
 It includes all tuples that are in tables A or in B.
 It also eliminates duplicates.
 Set A Union Set B would be expressed as A ∪ B
 SET DIFFERENCE ( Symbol : - )
 The result of A – B, is a relation which includes all tuples that are in A but not in B.
 The attribute name of A has to match with the attribute name in B.
 INTERSECTION (symbol : ∩) A ∩ B
 Defines a relation consisting of a set of all tuple that are in both in A and B.
 However, A and B must be union-compatible.
 PRODUCT OR CARTESIAN PRODUCT gg (Symbol : X )
ia.O rr
.O
lal i
 Cross product is a waydof asa
adsacombining two relations.
P a
P a
. . contains, both relations being combined.
 The resulting relation
wwww
ww
 This type of operation is helpful to merge columns from two relations.
 A x B means A times B, where the relation A and B have different attributes.

89
5. Explain the characteristics of DBMS.
1. Data Stored in a Tables  Data is stored into tables, created inside the database.
 DBMS also allows to have relationship between tables.

2. Reduced Redundancy  Unnecessary repetition of data in database was a big


problem.
 DBMS follows Normalisation which divides the data in
such a way that repetition is minimum.
3.Data Consistency  Data Consistency means that data values are the same at all
instances of a database.
4.Support Multiple user and  DBMS allows multiple users to work on it(update, insert,
Concurrent Access delete data) at the same time and still manages to maintain
the data consistency.
5.Query Language  DBMS provides users with a simple query language, using
which data can be easily fetched, inserted, deleted and

6. Security  The DBMS also takes care of the security of data,


protecting the data from unauthorized access.
 Creating user accounts with different access permissions
we can easily secure our data.
7. DBMS Supports  It allows us to better handle and manage data integrity in
Transactions real world applications where multi-threading is
extensively used.
12. STRUCTURED QUERY LANGUAGE
Section – A
Choose the best answer (1 Mark)
1. Which commands provide definitions for creating table structure, deleting relations, and modifying
relation schemas.
a. DDL b. DML c. DCL d. DQL
2. Which command lets to change the structure of the table?
a. SELECT b. ORDER BY c. MODIFY d. ALTER
3. The command to delete a table including the structure is
a. DROP b. DELETE c. DELETE ALL d. ALTER TABLE
4. Queries can be generated using
a. SELECT b. ORDER BY c. MODIFY d. ALTER
5. The clause used to sort data in a database
a. SORT BY b. ORDER BY c. GROUP BY d. SELECT
Section-B
Answer the following questions (2 Marks)
1. Write a query that selects all students whose age is less than 18 in order wise.

Query: SELECT * FROM Student WHERE Age<=18 ORDER BY Name;

2. Differentiate Unique and Primary Key constraint.


Unique Key Constraint Primary Key Constraint

 This constraint ensures that no two rows  This constraint declares a field as a Primary
have the same value in the specified key which helps to uniquely identify a
columns. record.

 The UNIQUE constraint can be applied only  The primary key does not allow NULL
to fields that have also been declared as values and therefore a primary key field must
NOT NULL. have the NOT NULL constraint.

91
3. Write the difference between table constraint and column constraint?
Table Constraint Column Constraint

 Table constraints apply to a group of one or  Column constraints apply only to individual
more columns. column.

4. Which component of SQL lets insert values in tables and which lets to create a table?
Command Description component

Insert Inserts data into a table DML

Create To create tables in the database. DDL

5. What is the difference between SQL and MySQL?


SQL MySQL
 Structured Query Language is a language  MySQL is a database management system,
used for accessing databases. like SQL Server, Oracle, Informix, Postgres,
etc.
 SQL is a DBMS  MySQL is a RDBMS.

Section-C
Answer the following questions (3 Marks)
1. What is a constraint? Write short
Orgrnote
g on Primary keyOconstraint.
rgrg
s a
s laalia. i.O s aslaalia. i.O
 Constraint is a condition
adaadapplicable
a on a field aordaaset
da of fields.
. P. P
wwdeclares a field as a w . P. P
ww key which helps to uniquely identify a record.
 Primary constraint
wwww wwPrimary
w
 It is similar to unique constraint except that only one field of a table can be set as primary key.
 The primary key does not allow NULL values and therefore a primary key field must have the
NOT NULL constraint.

2. Write a SQL statement to modify the student table structure by adding a new rgrg
ifield.
i.O.O
d a
d saaslaala
aa
Syntax : ALTER TABLE <table-name> ADD <column-name><datawtype><size>;
.P.P
w
ww w w
To add a new column “Address” of type „char‟ to the Student table, the command is used as
Statement: ALTER TABLE Student ADD Address char;

92
3. Write any three DDL commands.
Data Definition Language:
Create Command: To create tables in the database.
CREATE TABLE Student (Admno integer, Name char(20), Gender char(1), Age integer);
Alter Command: Alters the structure of the database.
ALTER TABLE Student ADD Address char;
Drop Command: Delete tables from database.
DROP TABLE Student;
4. Write the use of Savepoint command with an example.

 The SAVEPOINT command is used to temporarily save a transaction so that you can rollback to the
point whenever required.
Syntax: SAVEPOINT savepoint_name;
Example: SAVEPOINT A;
5. Write a SQL statement using DISTINCT keyword.
 The DISTINCT keyword is used along with the SELECT command to eliminate duplicate rows in
the table.
 This helps to eliminate redundant data.
 For Example: SELECT DISTINCT Place lai Student;.Org
saFROM
. P ada
wSection - D
ww
Answer the following questions: (5 Marks)

1. Write the different types of constraints and their functions.


 Constraint is a condition applicable on a field or set of fields.
 Type of Constraints:

i .O .Orgrg
lal a i
a d
a adsaasa
.P.P
ww
ww
ww
(i)Unique Constraint: Table Constraint
 This constraint ensures that no two rows have the same value in the specified columns.

93
 For example UNIQUE constraint applied on Admno of student table ensures that no two students
have the same admission number and the constraint can be used as:

CREATE TABLE Student


(
Admno integer NOT NULL UNIQUE, → Unique constraint
Name char (20) NOT NULL,
Gender char (1),
);
 The UNIQUE constraint can be applied only to fields that have also been declared as NOT NULL.
 When two constraints are applied
g r rg
a l alia.O
i .on
O a single field, it is known as multiple constraints.
s s a
 In the above MultipleP daada
aconstraints NOT NULL and UNIQUE are applied on a single field Admno.
ww. . P
(ii) Primary Key
wwww
Constraint:
 This constraint declares a field as a Primary key which helps to uniquely identifyi.aO.record.rgrg
O
l a a i
 It is similar to unique constraint except that only one field of a table can bedadset asl primary key.
saasa
a a
.P.declared
P
 The primary key does not allow NULL values and therefore w aw ww
wfield
w as primary key must
have the NOT NULL constraint.
Example:
CREATE TABLE Student
(
Admno integer NOT NULL PRIMARY KEY, → Primary Key constraint
Name char(20)NOT NULL,
Gender char(1),
Age integer,
);
(iii) DEFAULT Constraint:
 The DEFAULT constraint is used to assign a default value for the field.
 When no value is given for the specified field having DEFAULT constraint, automatically the
default value will be assigned to the field.
 Example:
CREATE TABLE Student
(
Admno integer NOT NULL PRIMARY KEY,
Name char(20)NOT NULL,
Gender char(1),
Age integer DEFAULT = “17”, → Default Constraint
Place char(10));
94
 In the above example the “Age” field is assigned a default value of 17, therefore when no value is
entered in age by the user, it automatically assigns 17 to Age.
(iv) Check Constraint:
 This constraint helps to set a limit value placed for a field.
 When we define a check constraint on a single column, it allows only the restricted values on that
field.
 Example:
CREATE TABLE Student
(
Admno integer NOT NULL PRIMARY KEY
Name char(20)NOT NULL, g
ia.O r rg
.O
Gender char(1), alaal i
a daadsas
Age integer (CHECK<=19),
P → Check Constraint
ww.. P
www w
Place char(10),
);

 In the above example the check constraint is set to Age field where the value of Age must be less
than or equal to 19.
(V) Table Constraint:
 When the constraint is applied to a group of fields of the table, it is known as Table constraint.
 The table constraint is normally given at the end of the table definition.
 Let us take a new table namely Student1 with the following fields Admno, Firstname, Lastname,
Gender, Age, Place:
 Example:
CREATE TABLE Student 1
(
Admno integer NOT NULL,
Firstname char(20),
Lastname char(20),
Gender char(1),
Age integer,
Place char(10),
PRIMARY KEY (Firstname, Lastname) → Table constraint i .O . rgrg
O
l al a i
); a d
a adsaasa
ww.P.Pand Lastname are defined as Primary key which is a
 In the above example, the two fields, Firstname
wwww
Table constraint.

95
2. Consider the following employee table. Write SQL commands for the qtns.(i)i.O
torg
.O rg
(v).
a s
a aslaalai
d
a ad
w .P.P
w
w
www
i .O . rgrg
O
l ala i
a d
a adsaasa
.P.P
ww
ww
ww

(i) To display the details of all employees in descending order of pay.


SELECT * FROM employee ORDER BY DESC;
(ii) To display all employees whose allowance is between 5000
g and 7000.
l a i.Or
SELECT * FROM employee WHERE allowance BETWEEN a 5000 AND 7000;
P a das
w.
(iii) To remove the employees who are mechanic.
ww
DELETE FROM employee WHERE desig=‟Mechanic‟;
(iv) To add a new row.
INSERT INTO employee
(empcode,name,desig,pay,allowance)VALUES(S1002,Baskaran,Supervisor,29000,12000);
(v) To display the details of all employees who are operators.
SELECT * FROM employee WHERE design=‟Operator‟;

3. What are the components of SQL? Write the commands in each.


Components of SQL:

i) DATA MANIPULATION LANGUAGE :


 A Data Manipulation Language (DML) is a computer programming language used for adding
(inserting), removing (deleting), and modifying (updating) data in a database.

96
 By Data Manipulation we mean,
Insertion of new information into the database
Retrieval of information stored in a database.
Deletion of information from the database.
Modification of data stored in the database.
ii) DATA DEFINITION LANGUAGE:
 The Data Definition Language (DDL) consist of SQL statements used to define the database
structure or schema.
 It simply deals with descriptions of the database schema and is used to create and modify the
structure of database objects in databases.
 The DDL provides a set of definitions to specify the storage structure and access methods used by
the database system.
 SQL commands which comes under Data Definition Language are:
Create To create tables in the database.

Alter Alters the structure of the database.

Drop Delete tables from database.


s a
s laalia.
a
adada
Truncate Remove all records from a table, also release the space occupied by those records.
w .P.P
wwww w

iii) DATA CONTROL LANGUAGE:


 A Data Control Language (DCL) is a programming language used to control the access of data
stored in a database.
 It is used for controlling privileges in the database (Authorization).
 The privileges are required for performing all the database operations such as creating sequences,
views of tables etc.
SQL commands which come under . O Ogrg Control Language
rData . O rgrare:
O g
l a
a alia i. l
asala i
a i .
Grant Grants permission
dasasto one or more usersdatosaperform specific tasks.
a ad
.P.P a ad
.P.P
w w w w w w
Revoke Withdraws wwwgiven by the GRANT statement.
www the access permission

iv) TRANSACTIONAL CONTROL LANGUAGE:


 Transactional control language (TCL) commands are used to manage transactions in the database.
 These are used to manage the changes made to the data in a table by DML statements.
SQL command which come under Transfer Control Language are:

97
g
Commit Saves any transaction into the database permanently.

Roll back Restores the database to last commit state.


g
Save point Temporarily save a transaction so that you can rollback.

4. Construct the following SQL statements in the student table:


(i) SELECT statement using GROUP BY clause.
SELECT Gender FROM Student GROUP BY Gender;
Output:
Gender rg
s alai.O
Male .Pad
a
w
ww
Female
rg
s alai.O
ad a
.P
SELECT Gender, count(*)
ww FROM Student GROUP BY male;
w
Output:
Gender Count(*)

Male 5

Female 3

(ii) SELECT statement using ORDER BY clause.


SELECT * FROM student WHERE Age>=18 ORDER BY Name DESC;
Output:

i .O . rgrg
O i .O . rgrg
O i .O . rgrg
O
l al a i l al a i l al a i
a d
a adsaasa adaadsaasa adaadsaasa
.P.P
ww .P.P
ww .P.P
ww
ww
ww ww
ww ww
ww
i .O . rgrg
O i .O . rgrg
O i .O . rgrg
O
l al a i l al a i l al a i
a d
a adsaasa a d
a adsaasa a d
a adsaasa
.P.P
ww .P.P
ww .P.P
ww
ww
ww ww
ww ww
ww

98
5. Write a SQL statement to create a table for employee having any five fields and create a table
constraint for the employee table.
CREATE TABLE employee
(
empno integer NOT NULL,
name char(20),
desig char(20),
pay integer,
allowance integer,
PRIMARY KEY (empno)
);
13. PYTHON AND CSV FILES
Section – A
Choose the best answer (1 Mark)
1. A CSV file is also known as a ….
(A) Flat File (B) 3D File (C) String File (D) Random File
2. The expansion of CRLF is
(A) Control Return and Line Feed (B) Carriage Return and Form Feed
(C) Control Router and Line Feed (D) Carriage Return and Line Feed
3. Which of the following module is provided by Python to do several operations on the CSV files?
(A) py (B) xls (C) csv (D) os
4. Which of the following mode is used when dealing with non-text files like image or exe files?
(A) Text mode (B) Binary mode (C) xls mode (D) csv mode
5. The command used to skip a row in a CSV file is
(A) next() (B) skip() (C) omit() (D) bounce()
6. Which of the following is a string used to terminate lines produced by writer()method of csv
module?
(A) Line Terminator (B) Enter key (C) Form feed (D) Data Terminator
7. What is the output of the following program? import csv
d=csv.reader(open('c:\PYPRG\ch13\city.csv'))
next(d)
for row in d:
print(row)
if the file called “city.csv” contain the following details
chennai,mylapore
mumbai,andheri

A) chennai,mylapore (B) mumbai,andheri


(C) chennai (D) chennai,mylapore
mumba mumbai,andheri

100
8. Which of the following creates an object which maps data to a dictionary?
(A) listreader() (B) reader() (C) tuplereader() (D) DictReader ()
9. Making some changes in the data of the existing file or adding more data is called
(A)Editing (B) Appending (C) Modification (D) Alteration
10. What will be written inside the file test.csv using the following program import csv
D = [['Exam'],['Quarterly'],['Halfyearly']]
csv.register_dialect('M',lineterminator
i .O . rgrg = '\n')
O
l
aa al a i
P a daadsas
with open('c:\pyprg\ch13\line2.csv', 'w') as f:
ww. . P
wr = csv.writer(f,dialect='M')
wwww
wr.writerows(D)
f.close()
(A) Exam Quarterly Halfyearly (B) Exam Quarterly Halfyearly
(C) E (D) Exam,
Q Quarterly,
H Halfyearly

Section-B
Answer the following questions (2 Marks)

1. What is CSV File?


 A CSV file is a human readable text file where each line has a number of fields, separated by
commas or some other delimiter.
 A CSV file is also known as a Flat File that can be imported to and exported from programs that
store data in tables, such as Microsoft Excel or OpenOfficeCalc.

2. Mention the two ways to read a CSV file using Python.

3. Mention the default modes of the File.


 The default is reading („r‟) in text mode.
 In this mode, while reading from the file the data would be in the format of strings.
101
g rgrgof next() function?
4. What iis.O.use
O
a s
a aslaalai
a ad“next()”command is used to avoid or skip the first row or row heading.
.P.P
d
w ww
www  Example: While sorting the row heading is also get sorted, to avoid that the first is skipped using
g
next().
 Then the list is sorted and displayed.

5. How will you sort more than one column from a csv file? Give an example statement.
 To sort by more than one column you can use itemgetter with multiple indices.
Syntax: operator.itemgetter(col_no)
Example: sortedlist = sorted (data, key=operator.itemgetter(1))

Section-C

Answer the following questions (3 Marks)

1. Write a note on open() function of python. What is the difference between the two methods?
 Python has a built-in function open() to open a file.
 This function returns a file object, also called a handle, as it is used to read or modify the file
accordingly.
 The default is reading in text mode.
 In this mode, while reading from the file the data would be in the format of strings.
 On the other hand, binary mode returns bytes and this is the mode to be used when dealing with
non-text files like image or exe files.

2. Write a Python program to modify an existing file.


 In this program, the third row of “student.csv” is modified and saved.
 First the “student.csv” file is read by using csv.reader() i . . rgrg
function.
O O
l al a i
 Then, the list() stores each row of the file. Pad aadsaasa
w . .P
w
 The statement “lines[3] = row”, changed wwwwthe third row of the file with the new content in “row”.
 The file object writer using writerows (lines) writes the values of the list to “student.csv” file.

PROGRAM: student.csv
import csv
row = [„3‟, „Meena‟,‟Bangalore‟]
with open(„student.csv‟, „r‟) as readFile:

102
reader = csv.reader(readFile)

lines = list(reader) # list()- to store each row of data as a list


lines[3] = row
with open(„student.csv‟, „w‟) as writeFile:
# returns the writer object which converts the user data with delimiter
writer = csv.writer(writeFile)
#writerows()method writes multiple rows to a csv file
writer.writerows(lines)
readFile.close()
writeFile.close()

3. Write a Python program to read a CSV file with default delimiter comma (,).

#importing csv
import csv #opening the csv file which is in different location with read mode
with open('c:\\pyprg\\sample1.csv', 'r') as F:
#other way to open the file is f= ('c:\\pyprg\\sample1.csv', 'r')
reader = csv.reader(F) # printing each line of the Data row by row
print(row)
F.close()

OUTPUT:
['SNO', 'NAME', 'CITY']
['12101', 'RAM', 'CHENNAI']
['12102', 'LAVANYA', 'TIRUCHY'] i . O. rgrg
O
a
l la i
asaasa
['12103', 'LAKSHMAN', 'MADURAI']
adad
ww.P.P
ww
ww
4. What is the difference between the write mode and append mode.

Write Mode Append Mode


 'w'  'a'
 Open a file for writing.  Open for appending at the end of the file
without truncating it.

 Creates a new file if it does not exist or  Creates a new file if it does not exist.
truncates the file if it exists.

103
5. What is the difference between reader() and DictReader() function?
Reader():
 The reader function is designed to take each line of the file and make a list of all columns.
 Using this method one can read data from csv files of different formats like quotes (" "), pipe (|) and
comma (,).
 csv. Reader work with list/tuple.
 Syntax: csv.reader(fileobject,delimiter,fmtparams)
DictReader():
 DictReader works by reading the first line of the CSV and using each comma separated value in this
line as a dictionary key.
 DictReader is a class of csv module is used to read a CSV file into a dictionary.
 It creates an object which maps data to a dictionary.
 csv.DictReader work with dictionary.

Section - D
Answer the following questions: (5 Marks)
1. Differentiate Excel file and CSV file.

Orgrg
Excel CSVsaslaalia. i.O
dada
a atext format with a series
 Excel is a binary file that holds information  CSV format is awplain
w.P.P
w
ww w
about all the worksheets in a file, including of values separated by commas.
both content and formatting.
 XLS files can only be read by applications  CSV can be opened with any text editor in
that have been especially written to read their Windows like notepad, MS Excel,
format, and can only be written in the same OpenOffice, etc.
way.
 Excel is a spreadsheet that saves files into its  CSV is a format for saving tabular
own proprietary format viz. xls or xlsx information into a delimited text file with
extension .csv i .O. rgrg
O
l ala i
asamuch faster, and it
 Excel consumes more memory while  Importing CSV filesacan daadsabe
w.P.memory
also consumeswless P
importing data wwww

104
g
2. Tabulate the different mode with its meaning.

Python File Modes:

Mode Description
'r'  Open a file for reading. (default)
'w'  Open a file for writing. Creates a new file if it does not exist or truncates the
file if it exists.
'x'  Open a file for exclusive creation. If the file already exists, the operation fails.
'a'  Open for appending at the end of the file without truncating it. Creates a new
file if it does not exist.
't'  Opren in text mode. (default)
'b'  Open in binary mode.
'+'  Open a file for updating (reading and writing)

3. Write the different methods to read a File in Python.


 Contents of CSV file can be read with the help of csv.reader() method.
 The reader function is designed to take each line of the file and make a list of all columns.
 Using this method one can read data from csv files of different formats like,
1. CSV file - data with default delimiter comma (,)
2. CSV file - data with Space at the beginning
3. CSV file - data with quotes
4. CSV file - data with custom Delimiters
 The syntax for csv.reader() is csv.reader(fileobject,delimiter,fmtparams)
i) CSV file with default delimiter comma (,)
The following program read a file called “sample1.csv” with default delimiter comma (,) and print row
by row.
import csv
with open('c:\\pyprg\\sample1.csv', 'r') as F:
reader = csv.reader(F)
print(row)
F.close()

105
OUTPUT:
['SNO', 'NAME', 'CITY']
['12101', 'RAM', 'CHENNAI']
['12102', 'LAVANYA', 'TIRUCHY']
['12103', 'LAKSHMAN', 'MADURAI'] rgrg
l ali
a .O
i .O
asaasaat the beginning
ii) CSV files- data with Spaces
adad
w .
w P.P
Consider the following
wwww file “sample2.csv” containing the following data when opened through notepad

i .O . rgrg
O
l
aa al a i
P a daadsas
. .P
ww
wwww

The following program read the file through Python using “csv.reader()”.

import csv
csv.register_dialect('myDialect',delimiter = ',',skipinitialspace=True)
F=open('c:\\pyprg\\sample2.csv','r')
reader = csv.reader(F, dialect='myDialect')
for row in reader:
print(row)
F.close()

OUTPUT:
['Topic1', 'Topic2', 'Topic3']
['one', 'two', 'three']
i . O . rgrg
O
['Example1', i
alala 'Example2', 'Example3']
a
P a daadsas
..
ww P
ww
ww  These whitespaces in the data can be removed, by registering new dialects using
g csv.register_dialect()
O rgrg class of csv module.
l a i
a . i . O
daA al
saasdialect describes the format of the csv file that is to be read.
. PPa a d
wwww.  In dialects the parameter “skipinitialspace” is used for removing whitespaces after the delimiter.
ww
g iii) CSV File-Data With Quotes
 You can read the csv file with quotes, by registering new dialects using csv.register_dialect() class
of csv module.
g  Here, we have quotes.csv file with following data.

106
g
SNO,Quotes
1, "The secret to getting ahead is getting started."
2, "Excellence is a continuous process and not an accident."
The following Program read “quotes.csv” file, where delimiter is comma (,) but the quotes are within
quotes (“ “).

import csv
csv.register_dialect('myDialect',delimiter = ',',quoting=csv.QUOTE_ALL,
skipinitialspace=True)
f=open('c:\\pyprg\\quotes.csv','r')
reader = csv.reader(f, dialect='myDialect')
for row in reader:
print(row)

OUTPUT:
['SNO', 'Quotes']
['1', 'The secret to getting ahead is getting started.']
['2', 'Excellence is a continuous process and not an accident.']

 In the above program, register a dialect with name myDialect.


 Then, we used csv. QUOTE_ALL to display all the characters after double quotes.
i.O. rgrg
O
lala i
saasa
daadDelimiters
iv) CSV files with Custom
P a
. .P
wwww
w w
 You can read CSV file having custom delimiter by registering a new dialect with the help of
csv.register_dialect().

i . O. rgrg
O
l al a i
adaadsaasa
.P.P
ww
ww
ww
 In the following file called “sample4.csv”,each column is separated with | (Pipe symbol)

107
i .O . rgrg
O i .O . rgrg
O i .O . rgrg
O
l ala i l al a i l al a i
adaadsaasa a d
a adsaasa a d
a adsaasa
.P.P
ww .P.P
ww .P.P
ww
ww
ww ww
ww ww
ww

4. Write a Python program to write a CSV File with custom quotes.


import csv
info = [[„SNO‟, „Person‟, „DOB‟],
[„1‟, „Madhu‟, „18/12/2001‟],
[„2‟, „Sowmya‟,‟19/2/1998‟],
[„3‟, „Sangeetha‟,‟20/3/1999‟],
[„4‟, „Eshwar‟, „21/4/2000‟],
[„5‟, „Anand‟, „22/5/2001‟]]
csv.register_dialect(„myDialect‟,quoting=csv.QUOTE_ALL)
with open(„c:\\pyprg\\ch13\\person.csv‟, „w‟) as f:
writer = csv.writer(f, dialect=‟myDialect‟)
for row in info:
writer.writerow(row)
f.close()

OUTPUT :
“SNO”,”Person”,”DOB” ”1”,”Madhu”,”18/12/2001” ”2”,”Sowmya”,”19/2/1998”
”3”,”Sangeetha”,”20/3/1999” ”4”,”Eshwar”,”21/4/2000”
“5”,”Anand”,”22/5/2001”

5. Write the rules to be followed to format the data in a CSV file.


1. Each record (row of data) is to be located on a separate line, delimited by a line break by pressing
enter key.
For example:

108
2. The last record in the file may or may not have an ending line break.
For example:

3.
 There may be an optional header line appearing as the first line of the file with the same format as
normal record lines.
 The header will contain names corresponding to the fields in the file and should contain the same
number of fields as the records in the rest of the file.
 For example: field_name1,field_name2,field_name3

4.

 Within the header and each record, there may be one or more fields, separated by commas.
 Spaces are considered part of a field and should not be ignored.
 The last field in the record must not be followed by a comma.
For example: Red , Blue
5.
 Each field may or may not be enclosed in double quotes.
 If fields are not enclosed with double quotes, then double quotes may not appear inside the fields.
For example:

6.
 Fields containing line breaks (CRLF), double quotes, and commas should be enclosed in double-
quotes.
 For example:

7.
 If double-quotes are used to enclose fields, then a double-quote appearing inside a field must be
preceded with another double quote.
 For example:

109
14. IMPORTING C++ PROGRAMS IN PYTHON
Section – A
Choose the best answer (1 Mark)
1. Which of the following is not a scripting language?
(A) JavaScript (B) PHP (C) Perl
rg (D) HTML
i.O
2. Importing C++ program in a Python program isdcalled
a sala
a
w.P
(A) wrapping ww
(B) Downloading (C) Interconnecting (D) Parsing
3. The expansion of API is
(A) Application Programming Interpreter (B) Application Programming Interface
(C) Application Performing Interface (D) Application Programming Interlink
4. A framework for interfacing Python and C++ is
(A) Ctypes (B) SWIG (C) Cython (D) Boost
5. Which of the following is a software design technique to split your code into separate parts?
(A) Object oriented Programming (B) Modular programming
(C) Low Level Programming (D) Procedure oriented Programming
6. The module which allows you to interface with the Windows operating system is
(A) OS module (B) sys module (C) csv module (D) getopt module
7. getopt() will return an empty array if there is no error in splitting strings to
(A) argv variable (B)rgopt variable (C)args variable (D) ifile variable
a i . O
8. Identify the function call
d sal
astatement in the following snippet.
P a
w.
ww
if __name__ =='__main__':
main(sys.argv[1:])
(A) main(sys.argv[1:]) (B) __name__ (C) __main__ (D) argv
9. Which of the following can be used for processing text, numbers, images, and scientific data?
rg g
(A) HTML (B) C (C) C++ i.Or
(D) PYTHON
ai.O
d a
d saaslala
10. What does __name__ contains ? aa
.P.P
w ww
w
(A) c++ filename (B) main() name ww
(C) python filename (D) os module name

110
g
Section-B
Answer the following questions (2 Marks)
1. What is the theoretical difference between Scripting language and other programming
language?
Scripting Language Programming Language
A scripting language requires an interpreter. A programming language requires a compiler.
A scripting language need not be compiled. A programming languages needs to be compiled
before running .
Example: Example:
JavaScript, VBScript, PHP, Perl, Python, Ruby, C, C++, Java, C# etc.
ASP and Tcl.

2. Differentiate compiler and interpreter.


Compiler Interpreter
Compiler generates an Intermediate Code. Interpreter generates Machine Code.
Compiler reads entire program for compilation. Interpreter reads single statement at a time for
interpretation.
Error deduction is difficult Error deduction is easy
Comparatively faster Slower
Example: Example:
gcc, g++, Borland TurboC Python, Basic, Java
i .O. rgrg
O i .O . rgrg
O
aa lal a i l
aa al a i
P adaadsa(i)s SWIG (ii) MinGW
3. Write the expansion of
P a daadsas
. .P
wSimplified
w ww. .P
SWIG ww
- ww Wrapper w ww
Interface
w Generator - Both C and C++
MinGW - Minimalist GNU for Windows

4. What is the use of modules?


 Modules are used to break down large programs into small manageable and organized files.
 Modules provide reusability of code.
 We can define our most used functions in a module and import it, instead of copying their
gg
r
i.Or
lalia.O
definitions into different programs.
asaasa
adacommand.
d
5. What is the usewof.Pcd
.P Give an example.
www
ww
 Syntax: cd <absolute path>

111
 “cd” command used to change directory and absolute path refers to the complete path where
Python is installed.
 Example: c:\>cd c:\ program files \ openoffice 4 \ program

Section-C
Answer the following questions (3 Marks)
l ai .Org
sa
daand
1. Differentiate PYTHON
P a C++.
w w.
w
PYTHON C++
 Python is typically an "interpreted" language  C++ is typically a "compiled" language

 Python is a dynamic-typed language  C++ is compiled statically typed language

 Data type is not required while declaring  Data type is required while declaring
variable variable
 It can act both as scripting and general  It is a general purpose language
purpose language

2. What are the applications of scripting language?


 To automate certain tasks in a program
 Extracting information from a data set
 Less code intensive as compared to traditional programming language
 can bring new functions to applications and glue complex systems together
3. What is MinGW? What is its use?
 MinGW refers to a set of runtime header files.
 It is used in compiling and linking the code of C, C++ and FORTRAN to be run on Windows
Operating System.
 MinGW allows to compile and execute C++ program dynamically through Python program using
g++.
4. Identify the module ,operator, definition name for the following: welcome.display()
Welcome  Module name
.  Dot operator
display()  Function call

112
5. What is sys.argv? What does it contain?
 sys.argv is the list of command-line arguments passed to the Python program.
 argv contains all the items that come along via the command-line input, it's basically an array
holding the command-line arguments of the program.
 To use sys.argv, you will first have to import sys.
 sys.argv[0] is always the name of the program as it was invoked.
 sys.argv[1] is the first argument you pass to the program.
 main(sys.argv[1]) :
 Accepts the program file (Python program) and the input file (C++ file) as a list(array).
 argv[0] contains the Python program which is need not to be passed because by default
__main__ contains source code reference
 argv[1] contains the name of the C++ file which is to be processed.
Section - D
Answer the following questions: (5 Marks)
1. Write any 5 features of Python.
 Python uses Automatic Garbage Collection.
 Python is a dynamically typed language.
 Python runs through an interpreter.
 Python code tends to be 5 to 10 times shorter than that written in C++.
 In Python, there is no need to declare types explicitly.
g
 In Python, a function may accept an argument of any type, and return multiple values without any
kind of declaration beforehand.
2. Explain each word of the following command.
COMMAND: Python <filename.py> -<i> <C++ filename without cpp extension>
Where ,
Python Keyword to execute the Python program from command-line
<filename.py > Name of the Python program to executed
-< i > Input mode
<C++ filename without cpp Name of C++ file to be compiled and executed
extension>

113
3. What is the purpose of sys,os,getopt module in Python. Explain
(i) Python‟s sys Module:
 This module provides access to some variables used by the interpreter and to functions that interact
strongly with the interpreter.
 sys.argv is the list of command-line arguments passed to the Python program.
 argv contains all the items that come along via the command-line input, it's basically an array
holding the command-line arguments of the program.
 To use sys.argv, you will first have to import sys.
 sys.argv[0] is always the name of the program as it was invoked.
 sys.argv[1] is the first argument you pass to the program.
 main(sys.argv[1]) :
 Accepts the program file (Python program) and the input file (C++ file) as a list(array).
 argv[0] contains the Python program which is need not to be passed because by
default__main__ contains source code reference
r g
ai.O of the C++ file which is to be processed.
 argv[1] contains the lname
a dasa
(ii) Python's OS Module:
w.P
ww
 The OS module in Python provides a way of using operating system dependent functionality.
 The functions that the OS module allows you to interface with the Windows operating system
where Python is running on.
 os.system(): Execute the C++ compiling command in the shell.
 For Example to compile C++ program g++ compiler should be invoked.
 Command: os.system („g++‟ + <varaiable_name1> „-<mode>‟ + <variable_name2>
 os.system  function system() defined in os module

 g++  General compiler to compile C++ program under Windows Operating


.O rg
alai
system.
P adas
 variable_name1
w .  Name of the C++ file without extension .cpp in string format
ww
 mode  To specify input or output mode. Here it is o prefixed with hyphen.

114
 Example:
os.system('g++ ' + cpp_file + ' -o ' + exe_file) --
g++ compiler compiles the file cpp_file and –o (output) send to exe_file
(iii) Python getopt Module:
 The getopt module of Python helps you to parse (split) command-line options and arguments.
 This module provides two functions to enable command-line argument parsing.
 getopt.getopt method:
 This method parses command-line options and parameter list.
 Syntax of getopt method:
<opts>,<args>=getopt.getopt(argv, options, [long_options])
 Here is the detail of the parameters −
 argv -- This is the argument list of values to be parsed (splited). In our program
the complete command will be passed as a list.
 options -- This is string of option letters that the Python program recognize as, for
input or for output, with options (like „i‟ or „o‟) that followed by a colon
(:).
Here colon is used to denote the mode.
g
ia.Orgrg i.Orgrg
 long_options -- This parameter is passed with i.Oof strings. Argument i.O
salaaallist
s salaalaof Long options
s
should be followed .P.P adada .P.Pa
anaequal sign ('=').www
adada
wwby
wwww www
 In our program the C++ file name
g will be passed as string and „i‟ also will be passed along with
g
l a i.Or
to indicate it as the inputa file.
P a das
 getopt() method w.
ww returns value consisting of two elements.
 Each of these values are stored separately
O rgrg in two different list (arrays) opts and args .
l alia. i. O
daadsaasastrings like mode, path and args contains any string if at all not splitted
 Opts contains list of asplitted
ww.P.P
w w w
w path or mode.
because of wrong
 args will be an empty array if there is no error in splitting strings by getopt().

115
g
 Example:
 opts, args = getopt.getopt (argv, "i:",['ifile='])
g
 where opts contains -- ('-i', 'c:\\pyprg\\p4')]
 -i: -- option nothing but mode should be followed by :
 'c:\\pyprg\\p4' -- value nothing but the absolute path of C++ file.
 In our examples since the entire command line commands are parsed and no leftover argument, the
second argument args will be empty [].
 If args is displayed using print() command it displays the output as [].
 Example:
 >>>print(args)
 []
4. Write the syntax for getopt() and explain its arguments and return values.
Python getopt Module:
 The getopt module of Python helps you to parse (split) command-line options and arguments.
 This module provides two functions to enable command-line argument parsing.
 getopt.getopt method:
 This method parses command-line options and parameter list.
 Syntax of getopt method:
<opts>,<args>=getopt.getopt(argv, options, [long_options])
 Here is the detail of the parameters −
 argv -- This is the argument list of values to be parsed (splited). In our program
the complete command will be passed as a list.
 options -- This is string of option letters that the Python program recognize as, for
input or for output, with options (like „i‟ or „o‟) that followed by a colon
(:). Here colon is used to denote the mode.
 long_options -- This parameter is passed with a list of strings. Argument of Long options
should be followed by an equal sign ('=').
 In our program the C++ file name will be passed as string and „i‟ also will be passed along with
to indicate it as the input file.
116
 getopt() method returns value consisting of two elements.
 Each of these values are stored separately in two different list (arrays) opts and args .
 Opts contains list of splitted strings like mode, path and args contains any string if at all not splitted
because of wrong path or mode.
 args will be an empty array if there is no error in splitting strings by getopt().
 Example:
 opts, args = getopt.getopt (argv, "i:",['ifile='])
 where opts contains -- ('-i', 'c:\\pyprg\\p4')]
 -i: -- option nothing but mode should be followed by :
 'c:\\pyprg\\p4' -- value nothing but the absolute path of C++ file.
 In our examples since the entire command line commands are parsed and no leftover argument, the
second argument args will be empty [].
 If args is displayed using print() command it displays the outpu
 Example:
 >>>print(args)
 []

5. Write a Python program to execute the following c++ coding.


C++ CODE:
#include <iostream>
g using namespace std;
int main()
{ cout<<“WELCOME”;
return(0);
}
The above C++ program is saved in a file welcome.cpp
PYTHON PROGRAM:
import sys, os, getopt
def main(argv):
cpp_file = ''
exe_file = ''
opts, args = getopt.getopt(argv, "i:",['ifile='])
for o, a in opts:
if o in ("-i", "--ifile"):
117
cpp_file = a + '.cpp'
exe_file = a + '.exe'
run(cpp_file, exe_file)
def run(cpp_file, exe_file):
print("Compiling " + cpp_file)
os.system('g++ ' + cpp_file + ' -o ' + exe_file)
print("Running " + exe_file)
print("-----------------------")
print
os.system(exe_file)
print
if __name__ =='__main__': #program starts executing from here
main(sys.argv[1:])
STEPS TO IMPORT CPP CODE INTO PYTHON CODE:
 Select File→New in Notepad and type the above Python program.
 Save the File as welcome.py.
 Click the Run Terminal and open the command window
 Go to the folder of Python using cd command.
 Type the command: Python c:\pyprg\welcome.py -i c:\pyprg\welcome_cpp
OUTPUT:

118
g
COMPUTER SCIENCE
15. DATA MANIPULATION THROUGH SQL
Section – A
Choose the best answer (1 Mark)
1. Which of the following is an organized collection of data?
(A) Database (B) DBMS (C) Information (D) Records
2. SQLite falls under which database system?
i . O . rgrg
O
(A) Flat file database system (B) Relational Database a i
d a
d saaslasystem
la
a
.P.PaDatabase system
(C) Hierarchical database system (D) Object oriented
w ww
w
ww
3. Which of the following is a control structure used to traverse and fetch the records of the
database?
(A) Pointer (B) Key (C) Cursor (D) Insertion point
4. Any changes made in the values of the record should be saved by the command
(A) Save (B) Save As (C) Commit (D) Oblige
5. Which of the following executes the SQL command to perform some action?
(A) Execute() (B) Key() (C) Cursor() (D) run()
6. Which of the following function retrieves the average of a selected column of rows in a table?
(A) Add() (B) SUM() (C) AVG() (D) AVERAGE()
7. The function that returns the largest value of the selected column is
(A) MAX() (B) LARGE() (C) HIGH() (D) MAXIMUM()
8. Which of the following is called the master table?
(A) sqlite_master (B) sql_master (D) master_main
9. The most commonly used statement in SQL is
(A) cursor (B) select (C) execute (D) commit
10. Which of the following clause avoide the duplicate?
(A) Distinct (B) Remove (C) Where (D) GroupBy

119
g Section-B
Answer the following questions (2 Marks)
1. Mention the users who uses the Database.
g  Users of database can be human users, other programs or applications
2. Which method is used to connect a database? Give an example.
 Create a connection using connect () method and pass the name of the database File.
g
 Example:
import sqlite3
# connecting to the database
connection = sqlite3.connect ("Academy.db")
# cursor
cursor = connection.cursor()
3. What is the advantage of declaring a column as “INTEGER PRIMARY KEY”
 If a column of a table is declared to be an INTEGER PRIMARY KEY, then whenever a NULL
will be used as an input for this column, the NULL will be automatically converted into an
integer which will one larger than the highest value so far used in that column.
 If the table is empty, the value 1 will be used.
4. Write the command to populate record in a table. Give an example.
 To populate (add record) the table "INSERT" command is passed to SQLite. “execute” method
executes the SQL command to perform some action.
 Example:
sql_command = """INSERT INTO Student (Rollno, Sname, Grade, gender, Average, birth_date)
VALUES (NULL, "Akshay", "B", "M","87.8", "2001-12-12");""" cursor.execute(sql_command)
5. Which method is used to fetch all rows from the database table?
 The fetchall() method is used to fetch all rows from the database table.
g  Example: result = cursor.fetchall()

120
g
g Section-C
Answer the following questions (3 Marks)

1. What is SQLite?What is it advantage?


 SQLite is a simple relational database system, which saves its data in regular data files or even in the
internal memory of the computer.
ADVANTAGES:
 SQLite is fast, rigorously tested, and flexible, making it easier to work.
 Python has a native library for SQLite.
2. Mention the difference between O rfetchone()
grg and fetchmany()O rgrg
a i
l la . i. O a i
l la . i . O laalia.
asaasa
fetchone()
adad adad asaasa fetchmany()s
adaada
a
s
. P
 The fetchone()wmethod
w . P . P. P .
ww of  The fetchmany() method returns wthe
w P. P
wwww returns the next
wwwrow
w wwww next
a query result set or None in case there is no row number of rows (n) of the result set.
left
 Using while loop and fetchone() method we can  Displaying specified number of records is done
display all the records from a table. by using fetchmany().

3. What is the use of Where Clause. Give a python statement Using the where clause.
 The WHERE clause is used to extract only those records that fulfill a specified condition.
EXAMPLE: To display the different grades scored by male students from “student table”
g
import sqlite3
connection = sqlite3.connect("Academy.db")
g cursor = connection.cursor()
cursor.execute("SELECT DISTINCT (Grade) FROM student where gender='M'")
result = cursor.fetchall()
g print(*result,sep="\n")
OUTPUT:
('B',)
('A',)
('C',)
('D',)
g

121
g
g
4. Read the following details.Based on that write a python script to display department wise
records.
database name :- organization.db
g Table name :- Employee
Columns in the table :- Eno, EmpName, Esal, Dept

PYTHON SCRIPT:
import sqlite3
connection = sqlite3.connect(“organization.db”)
c=conn.execute(“SELECT * FROM Employee GROUP BY Dept”)
for row in c:
print(row)
conn.close()

5. Read the following details.Based on that write a python script to display records in
desending order of Eno.
database name :- organization.db
Table name :- Employee
Columns in the table :- Eno, EmpName, Esal, Dept

PYTHON SCRIPT:
import sqlite3
connection = sqlite3.connect(“organization.db”)
cursor=connection.cursor()
cursor.execute(“SELECT * FROM Employee ORDER BY Eno DESC”)
result=cursor.fetchall()
print(result)
Section - D
Answer the following questions: (5 Marks)
1. Write in brief about SQLite and the steps used to use it.
 SQLite is a simple relational database system, which saves its data in regular data files or even in the
internal memory of the computer.
 It is designed to be embedded in applications, instead of using a separate database server program
such as MySQLor Oracle.

122
ADVANTAGES:
 SQLite is fast, rigorously tested, and fl exible, making it easier to work.
 Python has a native library for SQLite.
Steps To Use SQLite:
Step 1: import sqlite3
Step 2: Create a connection using connect () method and pass the name of the database File
Org
ai. of the database to be accessed.
 Connecting to a database in step2 means passing the
salname
. P ada
 If the database already exists the connection
w
ww will open the same.
 Otherwise, Python will open a new database file with the specified name.
Step 3: Set the cursor object cursor = connection. cursor ()
 Cursor is a control structure used to traverse and fetch the records of the database.
 Cursor has a major role in working with Python.
 All the commands will be executed using cursor object only.
 To create a table in the database, create an object and write the SQL command in it.
Example:- sql_comm = "SQL statement"
 For executing the command use the cursor method and pass the required sql command as a
parameter.
l a i .Org
 Many
sa number of commands can be stored in the sql_comm and can be executed one after other.
ada
.P  Any changes made in the values of the record should be saved by the commend "Commit" before
w
ww
closing the "Table connection".
2. Write the Python script to display all the records of the following table using fetchmany()

Icode ItemName Rate


1003 Scanner 10500
1004 Speaker 3000
1005 Printer 8000
1008 Monitor 15000
1010 Mouse 700

123
g
www.Padasalai.Org

PYTHON SCRIPT:

import sqlite3
connection = sqlite3.connect(“Materials.db”)
cursor=connection.cursor()
cursor.execute(“SELECT * FROM Materials”)
print(“Displaying All The Records”)
result=cursor.fetchmany(5)
print(result, Sep= “\n”)
OUTPUT:
Displaying All The Records
(1003, „Scanner‟, 10500)
(1004, „Speaker‟, 3000)
(1005, „Printer‟, 8000)
(1008, „Monitor‟, 15000)
(1010, „Mouse‟, 700)
3. What is the use of HAVING clause. Give an example python script
 Having clause is used to filter data based on the group functions.
rgrg
.OO
i i.
saslaala
 This is similar to WHERE condition but can be used only with group functions.
. P. adaada
P
 Group functions cannot be used in WHERE Clause but can be used
wwwwin HAVING clause.
ww
 Example:
import sqlite3
connection = sqlite3.connect("Academy.db")
cursor = connection.cursor() i . O . rgrg
O
l al a i
cursor.execute("SELECT a d
aadsaasa
GENDER,COUNT(GENDER) FROM Student GROUP BY GENDER
w.wP.P
ww
ww
HAVING COUNT(GENDER)>3")
result = cursor.fetchall()
co = [i[0] for i in cursor.description]
print(co)
print(result)

124
g
OUTPUT:
['gender', 'COUNT(GENDER)']
[('M', 5)]

4. Write a Python script to create


rg
i.Oa table called ITEM with following specification.
a l a
Add one record to theP das
atable.
.
w :- ABC
ww
Name of the database
Name of the table :- Item
Column name and specification :-
Icode :- integer and act as primary key
Item Name :- Item Name :-
Rate :- Integer
Record to be added :- 1008, Monitor,15000

PYTHON SCRIPT:
import sqlite3
connection = sqlite3.connect(“ABC.db”)
cursor=connection.cursor()
sql_command – “““ CREATE TABLE Item(
Icode INTEGER PRIMARY KEY,
ItemName VARCHAR(25),
Rate INTEGER) ; ”””
cursor.execute(sql_command)
sql_command = “““ INSERT INTO Item(Icode, ItemName, Rate) VALUES (1
”””
cursor.execute(sql_command)
connection.commit()
connection.close()
print(“TABLE CREATED”)
OUTPUT:
TABLE CREATED

125
5. Consider the following table Supplier and item .Write a python script for (i) to (ii)
SUPPLIER
Suppno Name City Icode SuppQty
S001 Prasad Delhi 1008 100rg
l a i . O
S002 Anu Bangalore 1010 a 200
das
S003 Shahid Bangalore 1008w.Pa 175
ww
S004 Akila Hydrabad 1005 195
S005 Girish Hydrabad 1003 25
S006 Shylaja Chennai 1008 180
S007 Lavanya Mumbai 1005 325

PYTHON SCRIPT:
i) Display Name, City and Itemname of suppliers who do not reside in Delhi.
import sqlite3
connection = sqlite3.connect(“ABC.db”)
cursor.execute(“SELECT Supplier.Name, Supplier.City,Item.ItemName FROM Supplier,Item
WHERE Supplier.Icode = Item.Icode AND Supplier.City NOT In Delhi ”)
s = [i[0] for I in cursor.description]
print(s)
result = cursor.fetchall()
for r in result:
print r
OUTPUT:
[„Name‟, „City‟, „ItemName‟]
[„Anu‟, „Bangalore‟, „Scanner‟]
[„Shahid‟, „Bangalore‟, „Speaker‟]i . O. rgrg
O
la
asal a i
[„Akila‟, „Hydrabad‟,adaadsa„Printer‟]
[„Girish‟, ww .P.P „Monitor‟]
„Hydrabad‟,
wwww
[„Shylaja‟, „Chennai‟, „Mouse‟]
[„Lavanya‟, „Mumbai‟, „CPU‟]

126
ii) Increment the SuppQty of Akila by 40

import sqlite3
connection = sqlite3.connect(“ABC.db”)
cursor.execute(“UPDATE Supplier ST SuppQty = SuppQty +40 WHERE Name = „Akila‟ ”)
cursor.commit()
result = cursor.fetchall()
print (result)
connection.close()

OUTPUT:

(S004, „Akila‟, „Hydrabad‟, 1005, 235)

127
g

16. DATA VISUALIZATION USING PYPLOT: LINE CHART, PIE CHART


g rg AND BAR CHART
a l a i.O
s Section – A
. P ada
w ww Choose the best answer (1 Mark)
1. Which is a python package used for 2D charts?
a. matplotlib.pyplot b. matplotlib.pip c. matplotlib.numpy d. matplotlib.plt
2. Identify the package manager for Python packages, or modules.
a. Matplotlib b. PIP c. plt.show() d. python package
3. Which of the following feature is used to represent data and information graphically?
a. Data list b. Data tuble c. Classes and objects d. Data Visualization

4. is a collection of resources assembled to create a single unified visual dispay.


a. Interface b. Dashboard c. Objects d. Graphics

5. Which of the following module should be importad to visualize data and information in phython?

a. CSV b. getopt c. mysql d. matplotlib

6. is a type of chart which displays information as a series of data points connected by

straight line segments.


a. CSV b. Pie Chart c. Bar chart d. All the above

128
g 7. Read the code:
a. import matplotlib.pyplot as plt
b. plt.plot(3,2)
g c. plt.show()
Identify the output for the above coding.

i.Org
al a
adas
w.P
ww

8. Identify the right type of chart using the following hints.


Hint 1: This chart is often used to visualize a trend in data over intervals of time.
Hint 2: The line in this type of chart is often drawn chronologically.
g
a. Line chart b. Bar chart c. Pie chart d. Scatter plot

129
g
09. Read the statements given below. Identify the right option from the following for pie chart.
Statement A: To make a pie chart with Matplotlib, we can use the plt.pie() function.
Statement B: The autopct parameter allows us to display the percentage value using the Python string
formatting.
a. Statement A is correct b. Statement B is correct
c. Both the statements are correct d. Both the statements are wrong
Section-B
Answer the following questions (2 Marks)

1. Define: Data Visualization.


 Data Visualization is the graphical representation of information and data.
 The objective of Data Visualization is to communicate information visually to users using statistical
graphics.

2. List the general types of data visualization.


 Charts
 Tables
 Graphs
 Maps
 Infographics
 Dashboards

3. List the types of Visualizations in Matplotlib.


 Line plot
 Scatter plot
 Histogram
 Box plot
 Bar chart and
 Pie chart

4. How will you install Matplotlib?


 Matplotlib can be installed using pip software.
 Pip is a management so慴ware for installing python packages.
 Importing Matplotlib using the command: import matplotlib.pyplot as plt
 Matplotlib can be imported in the workspace.

130
g 5. Write the difference between the following functions:
plt.plot([1,2,3,4]), plt.plot([1,2,3,4], [1,4,9,16]).

plt.plot([1,2,3,4]) plt.plot([1,2,3,4], [1,4,9,16])


g rg
sa lai.O
It refers y value as [1,2,3,4]
ada It refers x and y values as ([1,2,3,4], [1,4,9,16])
w w.P
w x values as [0,1,2,3]
Indirectly it refers Directly x and y values are given as
g (0,1) (1,1) (2,3) (3,4) (1,1) (2,4) (3,9) (4,16)

Section-C
Answer the following questions (3 Marks)
g
1. Draw the output for the following data visualization plot.
import matplotlib.pyplot as plt
g plt.bar([1,3,5,7,9],[5,2,7,8,2], label="Example one")
plt.bar([2,4,6,8,10],[8,6,2,5,6], label="Example two", color='g')
plt.legend()
plt.xlabel('bar number')
g plt.ylabel('bar height')
plt.title('Epic Graph\nAnother Line! Whoa')
plt.show()

OUTPUT:

i . O .Orgrg
a i
d a
d saaslala
a
.P.Pa
wwww
ww

l a i .Org
a d asa
w.P
ww
2. Write any three uses of data visualization.
 Data Visualization help users to analyze and interpret the data easily.
 It makes complex data understandable and usable.
 Various Charts in Data Visualization helps to show relationship in the data for one or more
variables.

131
3. Write the plot for the following pie chart output.

i . O . rgrg
O
la l a i
a d
a adsaasa
.P.P
ww
ww
ww
i .O . rgrg
O
l al a i
a d
a adsaasa
.P.P
ww
ww
ww

import matplotlib.pyplot as plt


slices = [7,2,2,13]
activities = [„sleeping‟, „eating‟, „working‟, „playing‟]
plt.pie(slices, labels=activities, atopct = „y.1.1 f%%‟)
plt.title(„Interesting Graph Ceck It Out‟)
plt.show()
Section - D
Answer the following questions: (5 Marks)
1. Explain in detail the types of pyplots using Matplotlib.
Line Chart:
 A Line Chart or Line Graph is a type of chart which displays information as a series of data points
called „markers‟ connected by straight line segments.

132
 A Line Chart is often used to visualize a trend in data over intervals of time – a time series – thus
the line is often drawn chronologically.

Example:
import matplotlib.pyplot as plt
years = [2014, 2015, 2016, 2017, 2018]
total_populations = [8939007, 8954518, 8960387, 8956741, 8943721]
plt.plot (years, total_populations)
plt.title ("Year vs Population in India")
plt.xlabel ("Year")
plt.ylabel ("Total Population")
plt.show()
In this program,
Plt.title() → specifies title to the graph
Plt.xlabel() → specifies label for X-axis
Plt.ylabel() → specifies label for Y-axis

Output:

i .O . rgrg
O
l al a i
a daadsaasa
ww.P.P
ww
ww
i .O . rgrg
O
aal al a i
P a daadsas
ww. .P
ww
ww
i .O . rgrg
O
a i
d adsaaslala
a
.P.Pa
w ww
w
ww
g
Bar Chart:
 A BarPlot (or BarChart) is one of the most common type of plot.
 It shows the relationship between a numerical variable and a categorical variable.
 Bar chart represents categorical data with rectangular i .O . rgrg
bars.
O
l al a i
 Each bar has a height corresponds to the value
a d itasrepresents.
adsa a
.P.P a
 The bars can be plotted vertically w
orw ww
whorizontally.
w
 It‟s useful when we want to compare a given numeric value on different categories.
 To make a bar chart with Matplotlib, we can use the plt.bar() function

133
Example:
import matplotlib.pyplot as plt
labels = ["TAMIL", "ENGLISH", "MATHS", "PHYSICS", "CHEMISTRY", "CS"]
usage = [79.8, 67.3, 77.8, 68.4, 70.2, 88.5]
l ai .Org
y_positions = range (len(labels))
plt.bar (y_positions,d sa
ausage)
.P a
ww
plt.xticksw(y_positions, labels)
plt.ylabel ("RANGE")
plt.title ("MARKS")
plt.show()

Output:

i . O . rgrg
O
l al a i
a d
a adsaasa
.P.P
ww
ww
ww
i.O . rgrg
O
l al a i
a d
a adsaasa
.P.P
ww
ww
ww

Labels → Specifies labels for the bars.


Usgae → Assign values to the labels specified.
Xticks → Display the tick marks along the x-axis at the values represented.
Then specify the label for each tick mark.
Range → Create sequence of numbers.
Pie Chart:
 Pie Chart is probably one of the most common type of chart.
 It is a circular graphic which is divided into slices to illustrate numerical proportion.
 The point of a pie chart is to show the relationship of parts out of a whole.
 To make a Pie Chart with Matplotlib, we can use the plt.pie() function.
 The autopct parameter allows us to display the percentage value using the Python string formatting.

134
Example:
import matplotlib.pyplot as plt
sizes = [89, 80, 90, 100, 75]
.O Ogrg
r"Maths",
labels = ["Tamil", "English",
l alia i . "Science", "Social"]
a s a
s a
ada=dalabels, autopct = "%.2f ")
plt.pie (sizes, labels
.P.P
www w
plt.axes().set_aspect ("equal")
ww
plt.show()

i . O . rgrg
O
a i
d adsaaslala
a
.P.Pa
wwww
ww
i . O .Orgrg
l al a i
a d
a adsaasa
.P.P
ww
ww
ww

2. Explain the various buttons in a matplotlib window.


Home Button:
 The Home Button will help once you have begun navigating your chart.
 If you ever want to return back to the original view, you can click on this.
Forward/Back Buttons:
 These buttons can be used like the Forward and Back buttons in your browser.
 You can click these to move back to the previous point you were at, or forward again.
Pan Axis:
 This cross-looking button allows you to click it, and then click and drag your graph around.
Zoom:
 The Zoom button lets you click on it, then click and drag a square that you would like to zoom into
specifically.
 Zooming in will require a left click and drag.
 You can alternatively zoom out with a right click and drag.
Configure Subplots:
 This button allows you to configure various spacing options with your figure and plot.

135
Save Figure:
 This button will allow you to save your figure in various forms.

3. Explain the purpose of the following functions:


a. plt.xlabel
plt.xlabel()specifies label for X-axis
b. plt.ylabel
plt.ylabel()specifies label for Y-axis
c. plt.title
plt.title() specifies title to the graph
d. plt.legend()
Calling legend() with no arguments automatically fetches the legend handles and their associated
labels.
e. plt.show()
Display a figure. When running in Python with its Pylab mode,display all figures and return to the
Python prompt.

136

You might also like