Course code: CA277
Course title: Python Programming
Pre-requisite(s): Nil
Co- requisite(s): CA 278 Python Programming Lab
Credits: 4 L: 3 T: 1 P: 0
Class schedule per week: 04
Class: BCA
Semester / Level: V/3
Branch: BCA
Course Objectives
This course enables the students to:
A. Understand computer programming concept using python language
B. Explore basic data types, control structures and standard library functions.
C. Explore the basic data structures: List, Tuple, Sets, Dictionaries available in python
D Learning Object oriented concept of programming and its implementation in python.
E. Handle disk data file for input output operations.
Course Outcomes
After the completion of this course, students will be able to:
CO1 Solve the basic mathematical problem using python programming
CO2 Use basic data types control structures and utility functions from standard library for
faster programming.
CO3 Use the basic and user defined data structures as per the need of problem.
CO4 Design and implement the problem using OOP concept of python.
CO5 Store, retrieve and manipulate data with disk file.
Page 183 of 255
SYLLABUS
(NO. OF
MODULE LECTURE
HOURS)
Module – I
Introduction to Computers, Programs, and Python:Introduction,Programming 8
Languages, Operating Systems, The History of Python, Features of python
language, Getting Started with Python, Programming Style and Documentation,
Programming Errors.
Elementary Programming:Introduction, Writing a Simple Program, Reading
Input from the Console, Identifiers,Variables, Assignment Statements, and
Expressions, Simultaneous Assignments, Named Constants, Numeric Data Types
and Operators, Evaluating Expressions and Operator Precedence, Augmented
Assignment Operators, Type Conversions and Rounding.
Module – II
Mathematical Functions, Strings,and Objects: Introduction, Common Python 8
Functions, Strings and Characters, Introduction to Objects and Methods,
Formatting Numbers and Strings.
Control Structures: Selections:Introduction, Boolean Types, Values, and
Expressions,if Statements, Two-Way if-else Statements, Nested if and Multi-Way
if-elif-else Statements, Logical Operators, Conditional Expressions, Loops:
Introduction, The while Loop, The for Loop, Nested Loops,Keywords break and
continue
Module – III
Functions: Introduction, Defining a Function, Calling a Function, Functions 8
with/without Return Values, Positional and Keyword Arguments, Passing
Arguments by Reference Values, Modularizing code, The Scope of Variables,
Default Arguments, Returning Multiple Values.
Lists:Introduction, List Basics, Copying Lists, Passing Lists to Functions,
Returning a List from a Function, Searching Lists, Sorting, Processing Two-
Dimensional Lists, Passing Two-Dimensional Lists to Functions,
Multidimensional Lists.
Page 184 of 255
Module – IV 8
Tuples, Sets, and Dictionaries: Introduction, Tuples: Creating Tuples, Basic
Tuple Operations, Indexing and Slicing in Tuples, Tuple methods, Sets: Creating
Sets, Manipulating and Accessing Sets, Subset and Superset, Set Operations,
Comparing the Performance of Sets and Lists, Dictionaries: Creating a Dictionary,
Adding, Modifying, and Retrieving Values, Deleting Items, Looping Items, The
Dictionary Methods.
.
Module – V
Objects and Classes: Introduction, Defining Classes for Objects, Immutable 8
Objects vs. Mutable Objects, Hiding Data Fields, Class Abstraction and
Encapsulation, Object-Oriented Thinking.Inheritance and Polymorphism:
Introduction, Superclasses and Subclasses, Overriding Methods, The object Class,
Polymorphism and Dynamic Binding, The isinstanceFunction. Class
Relationships: Association, Aggregation, composition.
Files and Exception Handling:Introduction, text input and ouput: opening a file,
Writing Data, Testing a File’s Existence, Reading All Data from a File, Writing
and Reading Numeric Data, Binary IO Using Pickling, Exception Handling,
Raising Exceptions.
TEXT BOOK
1. Y. Daniel Liang, “Introduction to programming using python”, Pearson Education; First edition (2017).
REFERENCE BOOK
1. Martin C. Brown, “Python: The Complete Reference”, McGraw Hill Education; Forth edition (2018)
2. Mark Lutz, “Learning Python” O′Reilly Fifth edition (2013)
3. Mark Summerfield, “Programming in Python 3: A Complete Introduction to the Python Language”
Pearson Education; Second edition (2018)
Page 185 of 255
POs met through Gaps in the Syllabus
Topics beyond syllabus/Advanced topics/Design
POs met through Topics beyond syllabus/Advanced topics/Design
Course Outcome (CO) Attainment Assessment Tools & Evaluation Procedure
Direct Assessment
Assessment Tool % Contribution during CO Assessment
First Quiz 10
Mid Semester Examination 25
Second Quiz 10
Teacher’s Assessment 5
End Semester Examination 50
Indirect Assessment
1. Students’ Feedback on Course Outcome.
Mapping of Course Outcomes onto Program Outcomes
Program
Specific
Course Program Outcomes (POs)
Outcomes
Outcome
(PSOs)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
CO1 3 3 3 2 1 1 2 2 1 1 1 1 1 2 2
CO2 3 1 1 1 1 3 1 1 2 1 1 2 3 2 3
CO3 2 3 3 1 2 1 2 2 1 1 1 2 2 2 3
CO4 1 1 3 3 1 1 1 1 1 1 1 1 2 3 3
CO5 3 3 3 1 2 1 1 2 1 1 2 1 1 2 3
Correlation Levels 1, 2 or 3 as defined below:
1: Slight (Low) 2: Moderate (Medium) 3: Substantial (High)
Mapping Between COs and Course Delivery (CD) methods
Course Course Delivery
CDCode Course Delivery Methods
Outcome Method Used
CD1 Lecture by use of Boards/LCD Projectors CO1 CD1, CD8
Page 186 of 255
CD2 Tutorials/Assignments CO2 CD1, CD8 and CD9
CD3 Seminars CO3 CD1, CD2 and CD5
CD4 Mini Projects/Projects CO4 CD1, CD5, CD8and CD9
CD5 Laboratory Experiments/Teaching Aids CO5 CD1, CD2 and CD9
CD6 Industrial/Guest Lectures
CD7 Industrial Visits/In-plant Training
Self- learning such as use of NPTEL Materials and
CD8
Internets
CD9 Simulation
Page 187 of 255