Back close

Course Detail

Course Name Advanced Programming Using Python MCA
Course Code 26CSA664
Program M. C. A.
Credits 4
Campuses Amritapuri, Mysuru

Syllabus

Unit I

Introduction & Object-Oriented Programming

Python syntax and semantics, data types, control flow, functions, modules, packages, recursion and lambda functions, file handling, exception handling, and debugging techniques. Classes and Objects, Constructors, inheritance, polymorphism, Magic methods (init, str, len, etc.), Composition vs Inheritance, class and static methods.

Unit II

Advanced Python Programming Concepts, Iterators and Generators, Decorators and closures, Context managers (with statement), Modules and packages (standard & custom), Dynamic typing and introspection.

Unit III

File and Text Processing

Text, binary file handling, Directory handling using os, shutil, glob, working with JSON and CSV, Regular Expressions using the re module (search, match, replace, extract patterns), Use- case: Log file analyzer

Unit IV

Problem-Solving Patterns in Python

Sorting, searching, recursion, Hashing, frequency counters, sliding window, Backtracking problems, Basic graph and tree problems using dictionaries/lists, Competitive programming style challenges (Leetcode-style)

Unit V

Testing and Best Practices

Writing testable code, Unit testing with unittest or pytest, Code documentation and style (PEP8), Error logging and debugging, Packaging Python applications. Git and GitHub basics, writing clean, maintainable code, and creating a portfolio of Python projects.

Objectives and Outcomes

Course Description 

This course aims to build strong programming foundations in Python, emphasizing both core and advanced features. Students will develop problem-solving skills using Python, focusing on logical reasoning, data structures, and algorithmic thinking. The course covers object-oriented programming concepts, advanced functionalities such as decorators, generators, file handling, and regular expressions. Through hands-on exercises and practical coding challenges, students will learn to write efficient, maintainable, and scalable Python programs for real-world applications 

Course Objective 

To equip students with strong programming foundations using Python, focusing on core logic building, object-oriented programming, advanced features like decorators and generators, file handling, regular expressions, and problem-solving patterns using Python. 

Course Outcomes  

COs 

Description 

CO1 

Apply core and object-oriented programming principles in Python. 

CO2 

Use advanced Python features such as iterators, generators, decorators, and context managers. 

CO3 

Develop robust Python applications using modules, error handling, and unit testing. CO4: Implement algorithmic problem-solving techniques using Python. 

CO4 

Handle text data using regular expressions and work with file systems efficiently 

 

CO-PO Mapping  

PO/PSO 

PO1 

PO2 

PO3 

PO4 

PO5 

PO6 

PO7 

PO8 

CO 

CO1 

– 

– 

– 

– 

CO2 

– 

– 

– 

CO3 

– 

– 

CO4 

– 

– 

CO5 

– 

– 

 

Textbooks / References

  • Python Programming: An Introduction to Computer Science by John Zelle
  • Fluent Python by Luciano Ramalho
  • Test-Driven Development with Python by Harry J.W. Percival

DISCLAIMER: The appearance of external links on this web site does not constitute endorsement by the School of Biotechnology/Amrita Vishwa Vidyapeetham or the information, products or services contained therein. For other than authorized activities, the Amrita Vishwa Vidyapeetham does not exercise any editorial control over the information you may find at these locations. These links are provided consistent with the stated purpose of this web site.

Admissions Apply Now