MBU Python Course Content

Welcome to the official documentation for the Python Programming course at Mohan Babu University. This documentation is based on the course content curated by Zaid Kamil.

Course Overview

This documentation is designed to help students master the essentials of Python programming. The course provides both conceptual clarity and practical exposure, with a blend of theoretical notes, code snippets, assignments, and mini projects.

Module 1

Module 2

Module 3

Module 4

Module 5

Course Structure

Module 1: Introduction to Python, Input/Output and Operators (7 Periods)

Module 1 Topics
  • Features and history of Python

  • Installation & IDEs (Jupyter, VS Code)

  • Interpreter vs Compiler

  • Using input() and print()

  • Formatted strings (f-strings, format)

  • Data types: int, float, str, bool

  • Dynamic typing & type conversions (explicit, implicit)

  • Operator types: arithmetic, relational, logical, bitwise, assignment, membership, identity

  • Expression evaluation, precedence & associativity

  • Comments: single-line & multi-line

Module 2: Decision Making and Looping (7 Periods)

  • if, if-else, elif, nested conditions

  • Loops: for, while, break, continue, pass

  • Functions: enumerate(), zip()

  • else with loops

  • List and dictionary comprehensions

  • Combining loops with conditionals

  • Basic exception handling: try-except

Module 3: Data Structures, Strings, Functions & Recursion (10 Periods)

  • Strings: creation, indexing, slicing, immutability

  • String methods: upper(), lower(), find(), replace(), split(), join()

  • Data structures: lists, tuples, dictionaries, sets

  • Function definition, parameters, return values, default/keyword arguments

  • Recursion (examples: factorial, Fibonacci)

  • Function integration with strings & collections

  • Lambda functions, map(), filter()

  • Module 3 Assignment

Module 4: Object-Oriented Programming in Python (8 Periods)

  • Classes and objects

  • Defining classes, instance variables and methods

  • Constructors (__init__) and destructors (__del__)

  • Encapsulation with access conventions: public, protected, private

  • Using @property decorator for getters and setters

  • Inheritance and its types: single, multiple, multilevel, hierarchical

  • Method overriding with super()

  • Polymorphism: method overriding, operator overloading, duck typing

  • Abstraction using abstract classes (abc module)

  • @abstractmethod decorator

  • Real-world OOP applications and design patterns

Module 5: Data Visualization & Web Development (12 Periods)

  • Importance & purpose of data visualization

  • NumPy, Pandas, Matplotlib: line graphs, bar charts, histograms, scatter plots

  • Flask: overview, setup, app structure, routing

  • Template rendering with Jinja2

  • Form handling: GET/POST methods

  • Basic CRUD operations

  • HTML/CSS integration

  • Mini project implementation

Course Outcomes

After completion of this course, students will be able to:

  • Demonstrate knowledge of Python constructs, sequences, sets, and dictionaries to solve computational problems.

  • Apply regular expressions for pattern searching in strings.

  • Develop and use Python modules to solve problems.

  • Apply file operations in Python for file processing.

  • Design applications using OOP features: encapsulation, inheritance, polymorphism, and exception handling.

  • Work independently to solve problems and communicate effectively.

How to Use This Documentation

  • Each module has a dedicated section with lecture notes, code samples, and exercises.

  • Access the notes in reStructuredText format for easy reading and sharing.

  • Refer to the code samples and mini projects for hands-on practice.

Contributing

Contributions are welcome! If you find any issues or have suggestions for improvement, feel free to open an issue or submit a pull request.

License

This documentation is for educational purposes at Mohan Babu University. Please contact the maintainer for reuse or distribution outside the university.

Curated by Zaid Kamil for Mohan Babu University, 2025.