1 |
All About Python (Basic) |
Origin
History
Scope of python
Popularity of python
Future of python
Use of Python in different emerging technologies of the modern era
Achievements of python
Mega projects hosted in Python |
2 |
Python Installation and Environment Setup (Basic) |
Different Flavours of python like Ipython, Jpython, Cpython, PYPY etc
Development Environment and its Requirements
Installation on windows
Installation on linux
Installation on mac
Choosing best IDE for your coding purpose from IDLE, Jupyter, Spyder, PyCharm, vscode, vim |
3 |
Writing first program in python (Basic) |
Using vim and command line creating first hello program in python
Using vscode or PyCharm for Integrated Development Environments
Using Jupyter Notebook and its features for fast, simple learning process |
4 |
Syntax of python (Basic) |
Python coding Style
Indentation
Comments in python
Snake style coding
Keywords in python
Built-in functions in python |
5 |
Data type and Data Structures (Basic) |
Numbers
Strings
List
Dictionary
Tuples
Sets
Frozen Sets
Type Casting |
6 |
Advance Containers from collection module (Advanced) |
Queues
Ordered Dictionary
Named Tuple
Default Dictionary
Counter
ChainMap
UserDict |
7 |
Control Statements (Basic) |
Flow diagrams
If – else
Nested if else
Operators |
8 |
Looping in Python (Basic) |
For Loop
While Loop
Break
Continue
Else with loop |
9 |
Functions in Python (Basic) |
Built-in Functions zip, enumerate, eval, exec, min, max, ord, chr, sorted, reversed, len, sum, power, divmod etc.
Defining Custom Functions
Function Calling
Scope Resolution global, local, nonlocal scope
Code Reusability
Recursion |
10 |
Advance Functions in Python (Advanced) |
Lambda anonymous function
Map function
Reduce function
Filter function
Lazy Evaluation |
11 |
Closures and Decorators in Python (Advanced) |
Memorization using closures
Writing extensible functions using Decorators
Decorators to implement oops like functionality to functions |
12 |
OOPS (Advanced) |
Encapsulation
Abstraction
Data hiding
Data Security
Access Control
Inheritance
Polymorphism
Overriding
Operator Overloading
Classes
Objects
Implementing Data Structures using OOPs
Message Passing and Share Space in OOPs |
13 |
Advance OOPS (Advanced) |
Name Mangling in OOPs
MRO (Method Resolution Order)
Meta Classes
Slots
Properties
Class methods
Static methods |
14 |
Implementation of Data Structures in Python (Basic) |
Implementing Stack
Implementing Queue
Implementing Link-List |
15 |
Generators & Iterators in Python (Advanced) |
Memory Optimization Techniques
Lazy Evaluation
Custom Generators & Decorators
Zip like generator objects and their working |
16 |
Exception Handling (Advanced) |
Exceptions and Errors
Built in Exceptions
Handling Exceptions
else keyword with exception
finally keyword to define Clean Up Actions
Custom Exception using raise keyword
assert keyword for assertions
Creating Custom Exception Class |
17 |
File Handling (Advanced) |
Type of file formats and their significance
File Creation and writing data to files
Reading data from a file
Overwriting files
Dealing with excel sheets, csv files
Making data persistent to create real life projects |
18 |
Data Serialization (Advanced) |
Serialization and De-Serialization
Serializing python objects using pickle, json and shelve modules
Deserializing Object State to read data from byte file or from network
Storing Custom Objects to make state machines |
19 |
Installing Third Party Modules in Python (Basic) |
Pip (Python Package Installer)
Installing packages and modules using pip
pypi (python package index) repository for package lookup
Offline installation of a package using pip |
20 |
Database Connectivity (Advanced) |
Concept of Data Base Management Systems
Using sqlite3 to store lite data in database like format
CURD (Create, Update, Read, Delete) Operation on sql table
Connecting python to a MariaDB or MySQL server using pymysql or mysql-client modules
Un-Structure Data Base Management systems like MongoDB |
21 |
Python Installation and Environment Setup (Advanced) |
Different Flavours of python like Ipython, Jpython, Cpython, PYPY etc
Development Environment and its Requirements
Installation on windows
Installation on linux
Installation on mac
Choosing best IDE for your coding purpose from IDLE, Jupyter, Spyder, PyCharm, vscode, vim |
22 |
Modules and Packages in Python (Advanced) |
Module name space
If __name__ == “ main ” in Python
Defining Custom Modules
Creating Packages in Python
Testing Packages
Importing and using custom packages
Adding custom modules to library |
23 |
Standard Library in Python (Advanced) |
OS and Sys Module to interact with Operating System
Shutil Module to copy, paste and delete files
Subprocess Module to execute commands & their output
Zlib for data compression
Time & Datetime Module for time management |
24 |
Graphical User Interface using Tk (Advanced) |
GUI basics
Widgets like button, label, frame, canvas, radio buttons
Check Buttons, dropdown menus, scroll bars
Progress Bars, message box, text box, entry widget etc
Geometry Managers like place, grid, and pack
Dialog box, top level window implementation |
25 |
Virtual Environment (Advanced) |
What is Virtual Environment
Difference between Production and Development Environment
Package versions and their importance in projects
Creating a separate environment for Python Projects
Activating Virtual Environment
Installing Different Version of packages in different environments
requirements.txt file
README file |
26 |
APIs (Advanced) |
Application Programming Interfaces
Accessing Google place APIs
Accessing Facebook Graph API
Weather API & Others |
27 |
Working with Images with Python |
Introduction to Images with Python
Working with Images with Python |
28 |
Emails with Python |
Introduction to Emails with Python
Sending Emails with Python
Receiving Emails with Python |
29 |
Core Python Projects |
Simple Calculator: Build a basic calculator application that can perform arithmetic operations
To-Do List Application: Develop a simple to-do list manager where users can add, edit, and delete tasks. You can include features like priority levels, due dates, and task categories. Implement functionalities such as saving tasks to a file for persistence.
Hangman Game: Create a classic Hangman game where players have to guess a word by suggesting letters within a certain number of attempts. |