PYTHON
All About Python
• Origin and History
• Scope, popularity and future of python
• Achievements of Python
• Mega Projects hosted in Python
Python Installation and Environment Setup
• Flavors of python like IPython, CPython, PYPY, etc.
• Development Environment & Requirements
• IDE of Python IDLE, Jupyter, PyCharm, VSCode, VIM
Writing first program in Python
• VIM and Command line creating first hello program in Python
• VSCode & PyCharm as IDE
• Jupyter-Notebook and it’s features for fast, simple learning process
Data types and Data Structures
• Numbers & Strings
• List, Tuples & Dictionary
• Sets & Frozen Sets
• Type Casting
Control Statements
• Flow Diagrams
• If – else
• Nested if else
Looping in Python
• For & While Loops
• Break, Continue & Else with loop
• Nested Loops
• Pattern Printing
Functions in Python
• Built-In Functions
• Defining Custom Functions
• Function Calling
• Scope Resolution global, local, non-local scope
• Recursion & Memorization
• Modular Programming & Code Reusability
Advance Functions in Python
• Lambda anonymous function
• Map & Reduce function
• Filter function
• Lazy & Eager Execution
Closures and Decorators in Python
• Memorization using closures
• Writing extensible functions using Decorators
• Decorators to implement OOPs like functionality to functions
OOPs (Object Oriented Programming)
• Encapsulation, Abstraction and Data hiding
• Data Security & Access Control
• Inheritance, Polymorphism and Overriding, Operator Overloading
• Classes & Objects
• Message Passing and Share Space in OOPs
Advance OOPs
• Name Mangling in OOPs
• MRO (Method Resolution Order)
• Meta Classes, Slots & Properties
• Class Methods & Static Methods
Implementation of Data Structures in Python
• Implementing Stack
• Implementing Queue
• Implementing Linked-List
Generators & Iterators in Python
• Memory Optimization Techniques
• Lazy Evaluation
• Custom Generators & Decorators
• Zip like generator objects and their working
Exception Handling
• Built-In Exceptions
• Handling Exceptions
• Else keyword with Exception
• Finally, keyword to define Clean Up Actions
• Custom Exception using raise keyword
• Assertion Error, Assert Keyword for Assertions
• Creating Custom Exception Class
File Handling
• 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
Data Serialization
• 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
Installing Third Party Modules in Python
• 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
Database Connectivity
• Concept of Data Base Management Systems
• Using sqlite3 to store lite data in database like format
• CRUD (Create, Read, Update and Delete) Operations
• Data Base Connectivity in Python
Modules and Packages in Python
• Module name space
• If __name__ = “__main__” in Python
• Defining Custom Modules
• Creating & Testing Packages
• Importing and using Custom Packages
• Adding Custom modules to library
Standard Library in Python
• 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
Virtual Environment
• Difference between Production and Development Environment
• Package versions and their importance in projects
• Creating a separate virtual environment for Python Projects
• Activating & Deactivating Virtual Environment
• Installing Different Version of packages in different environments
• Requirement.txt & README file
APIs
• Application Programming Interfaces
• Accessing Google place APIs
• Accessing Facebook Graph API
• Weather & Other APIs
GitHub
• Self-Paced through Video
Type of projects using Python:
• Search Engine
• Result project
Data Science & Machine Learning Overview