- Introduction to Programming: Industry Applications and Automation
Define programming paradigms and industry applications. Explore how software engineering automates tasks, processes data, and scales operations across domains like web development and data science.
- Programming Variables: Memory Allocation and Data Storage
Understand memory allocation in computer science. Define variables as named storage locations in system memory used to store, retrieve, and manipulate data dynamically during program execution.
- Control Flow: Conditional Decision-Making Statements
Control program execution paths using conditional statements. Implement if, else-if, and else logic to execute specific code blocks based on dynamic Boolean conditions and logical evaluations.
- Iteration Structures: Looping and Code Automation
Automate repetitive tasks using Iteration Structures. Implement loops to execute code blocks continuously until a specific exit condition or counter threshold is met.
- Modular Programming: Functions and Code Reusability
Write modular, reusable code using Functions. Define function signatures, pass arguments, and return values to break down complex algorithms into manageable sub-routines.
- Object-Oriented Programming (OOP): Classes and Objects
Model real-world entities using Object-Oriented Programming (OOP). Define Classes as architectural blueprints and instantiate Objects with specific attributes (properties) and methods (behaviors).
- Algorithm Design and Computational Problem Solving
Formulate step-by-step computational solutions using the Algorithmic Approach. Design logical sequences to process inputs, optimize mathematical operations, and generate accurate outputs for complex problems.
- Python Setup: PyCharm, Anaconda, and Jupyter Installation
Configure a professional Python development environment. Install the Python interpreter, set up the PyCharm IDE, deploy Anaconda for package management, and launch Jupyter Notebooks.
- Interactive Coding with the Jupyter Notebook Environment
Execute Python scripts interactively using Jupyter Notebook. Navigate the browser-based REPL (Read-Eval-Print Loop) environment for data analysis, code testing, and inline visualization.
- Python Data Types: Integers, Floats, Strings, and Booleans
Declare and initialize Python variables. Manage system memory dynamically by assigning primitive data types including integers (int), floating-point numbers (float), text (str), and logical values (bool).
- Python Operators: Arithmetic, Relational, and Logical
Execute programmatic calculations using Python Operators. Apply Arithmetic operators for math, Relational operators for value comparison, and Logical operators (AND, OR, NOT) for complex Boolean evaluations.
- Python Lexical Structure: Tokens, Keywords, and Identifiers
Analyze the lexical components of Python syntax. Identify standard Python Tokens including reserved Keywords, user-defined Identifiers, hardcoded Literals, and functional Operators.
- Strings in Python
This module begins with an introduction to Python strings. You will learn to implement Python strings in 3 different ways in the Jupyter notebook. You will also be familiarized with some inbuilt string functions of Python.
- Data Structures in Python
Data structures in Python include tuple, list, dictionary, set, conditional statement, and looping statement. This section shall enrich your knowledge on each of these with the code snippets in Jupyter Notebook.
- If Statement in Python
This section explains why and when to use “if-else” statements and demonstrates how to use them with an example.
- Looping Statements in Python
This section explains why and when to use “loop” statements and demonstrates how to use them with an example.
- Functions in Python
This section shall define what functions are in Python and demonstrate how a block of code performs a targeted action with an ATM working example.
- Intro to Object Oriented Programming in Python
This section shall begin by introducing you to OOPs, then continues by demonstrating how to create classes, adding parameters into the method, and constructors. You will then learn the concept of inheritance and understand its different types later in this section.
- Creating Python Classes: Blueprint Initialization
Define a Python Class as a structural blueprint. Use the 'class' keyword to encapsulate related variables (attributes) and functions (methods) into a single, cohesive software entity.
- Python Class Methods and the 'self' Parameter
Define interactive class behaviors using Python Methods. Pass parameters into methods and utilize the mandatory 'self' parameter to access and modify instance-specific attributes.
- Python Constructors: The initDunder Method
Initialize object state upon instantiation using Python Constructors. Define the init dunder method to automatically assign initial values to instance attributes when a new object is created.
- Python Inheritance: Parent and Child Class Relationships
Promote code reusability using Python Inheritance. Create Child classes that inherit attributes and methods from a Parent (Base) class to extend application functionality efficiently without redundant coding.
- Advanced Inheritance: Single, Multiple, and Multi-Level
Architect complex class hierarchies. Implement Single, Multiple, Multi-Level, and Hybrid inheritance models in Python to establish sophisticated parent-child relationship chains and Method Resolution Orders (MRO).