
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Python Introduction
Set up a Ubuntu-based Python development environment by choosing between Python 2.7 and 3.x, updating apt packages, and installing Vim and pip for flexible project work.
Learn Python program structure with def, indentation, and pass for empty functions and classes, master strings and comments including multiline strings, and understand shebang, interpreter location, and executable permissions.
String Handling Part 1
String Handling Part 2
Python String, list and tuple Slicing
List demo part 1
List demo part 2
List lecture 3
List Lecture 4
Lecture On Tuple
Explore the Python set data structure and its hash-map based implementation, and how it differs from dictionaries. Apply membership tests and set operations like union, intersection, and difference.
Dictionary Lecture 1
Dictionary Lecture 2
Dictionary Lecture 3
What are python modules, how it works and some examples of inbuilt modules in system.
Demo of python module part 2
Demo of python module part 3
Demo of python module part 4
Learn how to read user input in Python and convert it to integers to avoid string concatenation. Use __name__ == '__main__' to run functions only when executed directly.
Define and call functions in Python, pass parameters and default values, and return results; organize code into modular tasks, store functions in lists, and pass functions as arguments.
Function, *args, **kwargs Part_1
Function, *args, **kwargs Part_2
Function, *args, **kwargs Part_3
Swap variable using one line assignment.
Learn Python file handling with try-except for missing files, read lines, filter those starting with from, and build a list of emails to print.
Explore how classes group data and functions into encapsulated objects, serving as blueprints for unique instances with self, constructors, and class versus instance variables.
demonstrates extending a dog class with constructors and a display method, and shows calling methods on instances or the class, while explaining class versus instance variables and default arguments.
Learn how to override Python class methods such as __str__, __len__, and __repr__ in practical Python using a simple class, including custom length logic and string representations.
Learn how Python handles string immutability by using slicing to build a new string and reassign it, then implement a function to replace a character at a given index.
Practice python string slicing to replace a character at a given index by constructing a new string from start to index, the replacement, and index+1 to end.
Explore Python's zip and zip longest for parallel iteration, pairing city, rail, and longitude elements, showing default shortest input behavior and optional fill values.
Learn to implement a Python zip utility from scratch by pairing two lists in parallel using the shortest length, returning city-longitude tuples.
Master list comprehension in Python as a way to create a list from existing data with syntax like [item*item for item in L], and learn how generators improve memory efficiency.
Learn how to build dictionaries with dictionary comprehension and zip by pairing countries with capitals, then apply conditional filtering (e.g., exclude bulgaria) to create a refined dictionary.
Explore python sets, their uniqueness and hashing, create sets from lists, and perform add, update, and remove with discard vs remove, plus handling common elements, differences, and symmetric difference.
Explore how iterables, iterators, and generators differ, and how yield enables on-the-fly value generation to conserve memory; fetch values with next or for loops without building large lists.
Learn how generators yield values on demand, convert iterables to iterators with iter(), and use next and for loops while handling the StopIteration exception.
Learn how to implement __next__ for a custom Python iterator, returning one element at a time and raising StopIteration, with examples like a range-like counter and a multiplication table.
Compare memory usage between lists and iterators using memory profiler and psutil, showing generators dramatically reduce resident memory when processing millions of records.
Explore Python list operations with map, filter, reduce, and lambda functions through practical demos. Learn how to double a list, filter divisible by three, and sum using reduce.
Write a Python program using the whois library to fetch domain details such as creation and expiry dates, handle errors with try-except, and print results for multiple domains.
How to measure function performance using timeit and time module
Learn to measure Python function performance using perf_counter, process_time, and time.time, noting that perf_counter includes sleep while process_time excludes it, and time.time measures epoch time.
Create a small Python ping utility that scans a subnet range, using os.system to ping each address and report which hosts are alive (0 status means success).
Solution of ping test to check if the host is alive based on certain octet of subnet.
This course is for both the beginner and intermediate level with emphasis on practical approach and coding along with the tutorial.
The course demonstrates small set of independent program to demo a feature and later I stitch together concepts learnt to create medium complexity project.
The course is from beginner level but the student needs to have idea or familiarity with at-least one programming language.
Detailed understanding of the Python Language.
Detailed tutorial and internals of List, Dictionary, Sets, Tuples.
Detailed File Handling like reading/writing/opening. Several mini Project on Python.
Installation and development guide on Python.String Manipulation.
Detailed description and handling of Functions. Detailed description of Python Modules and how to write modules of your own.
Periodic updates on python news and new development. Future updates with lots of stuff like web scraping, youtube downloading and other stuff.
Operating system interfacing modules like OS and os.path
Demonstration of post, get for the rest client handling.
Writing Rest API backend with the Python.
Demo of the project in python for checking if the system is alive using the ping utility from within python program.
Demo of the project using the argparse, IPNetwork, netaddr, threads to do ping discovery for alive system.
Small Demo of the flask, although flask will not be covered extensively as its not a flask course.
This would be a dynamic and ever evolving course on python and new stuff will be posted very periodically.
I am planning to later cover the stock API and stock data fetch particularly from the polygon dot io for those who are interested, although this is currently not part of the program and will be added later.