UNIVERSITY OF MADRAS
BACHELOR OF COMPUTER APPLICATIONS (BCA)
DEGREE PROGRAMME
SYLLABUS WITH EFFECT FROM 2023-2024
Year: I Semester: I
Core-I: Python Programming
120C1A
(Common to B.Sc.-CS, CS with AI, CS with DS, Software Appl.)
Credits 5 Lecture Hours:4 per week
Learning Objectives: (for teachers: what they have to do in the class/lab/field)
Describe the core syntax and semantics of Python programming language.
Discover the need for working with the strings and functions.
Illustrate the process of structuring the data using lists, dictionaries, tuples and sets.
Understand the usage of packages and Dictionaries
Course Outcomes: (for students: To know what they are going to learn)
CO1: Develop and execute simple Python programs
CO2: Write simple Python programs using conditionals and looping for solving problems
CO3: Decompose a Python program into functions
CO4: Represent compound data using Python lists, tuples, dictionaries etc.
CO5: Read and write data from/to files in Python programs
UNITS CONTENTS
I Introduction: The essence of computational problem solving – Limits of
computational problem solving-Computer algorithms-Computer Hardware-
Computer Software-The process of computational problem solving-Python
programming language - Literals - Variables and Identifiers - Operators -
Expressions and Data types, Input / output.
II Control Structures: Boolean Expressions - Selection Control - If Statement-
Indentation in Python- Multi-Way Selection -- Iterative Control- While
Statement- Infinite loops- Definite vs. Indefinite Loops- Boolean Flag. String,
List and Dictionary, Manipulations Building blocks of python
programs,Understanding and using ranges.
III Functions: Program Routines- Defining Functions- More on Functions: Calling
Value-Returning Functions- Calling Non-Value-Returning Functions- Parameter
Passing - Keyword Arguments in Python - Default Arguments in Python-Variable
Scope. Recursion: Recursive Functions.
IV Objects and their use: Software Objects - Turtle Graphics – Turtle attributes-
Modular Design: Modules - Top-Down Design - Python Modules - Text Files:
Opening, reading and writing text files – Exception Handling.
V Dictionaries and Sets: Dictionary type in Python - Set Data type. Object Oriented
Programming using Python: Encapsulation - Inheritance – Polymorphism. Python
packages: Simple programs using the built-in functions of packages matplotlib,
NumPy, pandas etc.
UNIVERSITY OF MADRAS
BACHELOR OF COMPUTER APPLICATIONS (BCA)
DEGREE PROGRAMME
SYLLABUS WITH EFFECT FROM 2023-2024
Learning Resources:
Recommended Texts
1. Charles Dierbach, “Introduction to Computer Science using Python - A
computational Problem-solving Focus”, Wiley India Edition, 2015.
2. Wesley J. Chun, “Core Python Applications Programming”, 3rd Edition , Pearson
Education, 2016
Reference Books
1. Mark Lutz, “Learning Python Powerful Object Oriented Programming”, O’reilly
Media 2018, 5th Edition.
2. Timothy A. Budd, “Exploring Python”, Tata MCGraw Hill Education Private
Limited 2011, 1 st Edition.
3. John Zelle, “Python Programming: An Introduction to Computer Science”, Second
edition, Course Technology Cengage Learning Publications, 2013, ISBN 978-
1590282410
4. Michel Dawson, “Python Programming for Absolute Beginers” , Third Edition,
Course Technology Cengage Learning Publications, 2013, ISBN 978-143545500
Web resources
1. https://onlinecourses.swayam2.ac.in/cec22_cs20/preview