
Explore the fundamentals of Python comprehensions, covering list, dictionary, set, and generator comprehensions, with an introduction to each type and their usage.
Explore Python comprehensions as concise constructs to generate new sequences from existing ones, covering list, dictionary, set, and generator comprehensions.
Learn how to use list comprehension in Python to create a new list from an expression with for and if clauses, and compare it to a for loop.
Explore list comprehensions in Python: find common numbers from two lists, extract pairs as tuples, iterate over strings to lowercase, and produce a list of lists with squares and cubes.
Explore list comprehension versus lambda functions in Python, showing how map with a lambda can process lists and strings, compare readability, and highlight when to prefer list comprehensions.
Explore parsing a text file with Python list comprehensions, opening the file in read mode and collecting lines that contain a target word.
Explore how to apply list comprehensions to functions in Python, passing inputs and collecting outputs across a range, then filter even results with a conditional.
Explore dictionary comprehension in Python, transforming dictionaries with keys, values, and items, and compare it to for loops, lambda, and nested dictionary comprehension.
Master set comprehensions in Python by using curly brackets to create a set from an input. Include optional expression and predicate, remove duplicates, and filter even numbers.
Explore generator comprehensions in Python, compare them to list comprehensions, and learn how memory efficient, on-demand values are produced using round brackets.
Explore the section overview of Python descriptors, covering an introduction, advantages, why to use descriptors, descriptor protocols, invocation, properties, and related functions and methods, with many examples.
Explore Python descriptors, objects that manage class attributes through get, set, and delete methods, including data versus non-data descriptors and binding behavior, with examples of properties and class methods.
Explore how Python descriptors are invoked automatically via the get attribute flow, distinguish data and non-data descriptors, and see how object and type get attribute govern overrides.
Explore the purpose of descriptors in Python by examining a person class with name, age, and BMI, and how descriptors enforce type checks and protect against invalid attribute changes.
explore Python descriptors by implementing a BMI descriptor with get, set, and delete methods, enforcing integer type and nonnegative values, and showing how descriptors interact with a person class.
Learn how to create descriptors in Python with the property function, implementing get, set, and delete for a name attribute in a person class.
Create descriptors using a class in Python by overriding __get__ and __set__ for shared type validation. The tutorial shows a class A example and runtime checks that enforce strings.
Demonstrates creating descriptors in Python with @property, @x.setter, and @x.deleter, using a Person class to manage name with get, set, and delete operations.
Explore how Python descriptors power lazy properties, caching results, and dry reusable patterns, including non-data and data descriptor behavior, with practical examples.
Explore linked lists in Python, including singly and doubly linked lists, their creation, traversal, insertion, and deletion.
Compare singly and doubly linked lists in Python, detailing their data part, address part, head node concepts, and forward or backward traversal using next and previous pointers.
Explore linked lists in Python by building node-based structures, compare singly and doubly linked lists, and learn insertion, deletion, and the dynamic memory advantages and tradeoffs.
Learn to create a singly linked list in Python by defining a node class, linking nodes with next pointers, and traversing the list to print its values or specific data.
Learn how to insert elements into a singly linked list in python, using beginning, end, and between two data nodes.
Delete elements from a singly linked list in Python by traversing with a pointer, handling head deletion, and updating links between nodes.
Create and manipulate a doubly linked list in Python by defining a node with data, prev and next pointers, initializing a head, and adding and printing elements through traversal.
Demonstrates inserting elements into a doubly linked list in Python, including insertion at the beginning and after a specified node, with node data, next, and previous pointers.
Learn to append a node at the end of a doubly linked list in Python, handling the empty list and updating the node's next and previous pointers.
Learn how to delete a node from a doubly linked list in Python, including handling head and middle deletions by updating previous and next pointers and maintaining list integrity.
Install the OpenCV module for Python by running pip install opencv-python (or cv2 for Python 2.x) in your terminal, ensuring internet access, then proceed to the next video.
Learn to read and display images with OpenCV in Python, using imread, imshow, and waitKey to load and view Lena.png, then save a new image with imwrite.
Learn how to handle keyboard events in OpenCV by exiting with the escape key and triggering a new image creation (Lina two.png), then closing the windows.
Learn how to use OpenCV in Python to draw lines, arrow lines, rectangles (including filled), circles (including filled), and text on images (Miss Lena) with bgr colors and custom fonts.
Learn to capture live video with OpenCV using the Video Capture class, display frames from the default or other cameras, convert to grayscale, and access frame width and height.
OpenCV saves captured video by using cv2 video writer to write frames to register.avi, selecting a fourcc code like xvid and a 640 by 480 frame size.
Overlay frame width and height and current date and time on video frames with OpenCV using cv2.putText, handling font, font scale, BGR color, line type, and string conversion.
Explore OpenCV mouse events by listing and filtering events, printing actions like left and right button clicks, double clicks, mouse moves, and wheel events.
Implement mouse events in OpenCV with Python by using a mouse callback to detect left and right clicks, including double clicks, and display text at click coordinates.
Master simple image thresholding with OpenCV to separate the foreground from the background using a gradient image. See how binary and binary inverse thresholds assign 0 or 255 to pixels.
Detect red objects for OpenCV object detection by converting BGR to HSV, defining lower and upper red bounds, and applying a mask to reveal the target regions.
Master Python generators by using yield to produce values one at a time, saving memory. Compare generator functions with regular functions, and learn how next retrieves values.
Explore creating generators in Python by replacing return with yield, observe how a generator yields one value at a time and becomes a generator object.
Learn how to convert a function into a generator with yield, enabling on-demand results accessed by next and for loops, and compare memory use to a list-based approach.
Compare memory and time between a function and a generator for the first 100,000 natural numbers using memory_profiler and time. The generator uses minimal memory and yields values on demand.
Learn file management in Python, including creating, reading, writing, closing, and deleting files, plus saving dictionaries to a file.
Open, write, read, delete, and save files across csv, json, text, and excel formats, with a mini project and exercises to reinforce file handling in python programming.
Create a new text file in Python using write-plus mode, specify the path, open the file, and locate it in your project directory.
Explore the Python open function and its file modes, including r, w, x, a, b, d, and r+ or w+, to read, write, append, or create files.
Explore Python file handling beyond text files by creating and writing to csv and json files, using path and mode, and applying the same read and write concepts across formats.
Explore reading from a text file in Python by specifying the path and opening the file in read mode. Learn how read and write permissions affect file access using PyCharm.
Learn to rename an existing file in Python using the os module's rename function, specifying the original and new file names, with a practical demonstration in PyCharm.
Learn to write to an existing text file in Python by creating a file path, opening with write mode, and using the write method to save content.
Learn how to save data to a file in Python by opening a text file in write mode, writing text, and closing to persist data for future runs.
Learn how to use the append mode in Python to attach data to an existing text file, avoid overwriting, and copy data between files by appending.
Learn how to close a file in Python, prevent further writes after closing, and reuse a file by reopening, using writing mode and file.close in practical examples.
Learn how the with statement simplifies Python file handling by opening a file with the open function, writing data, and auto closing for safe exception handling.
Save a Python dictionary to csv, json, text, and pickle files by serializing dictionary items and writing them to disk. Explore how each format stores keys and values.
Explore magic methods in Python, overviewing types of magic functions, the three object types, practical examples, and the binary operator magic, and explain why learners should study them.
Explore Python magic methods, aka dunder or double-underscore special methods, to emulate built-in function behavior and overload arithmetic operators so your classes behave like built-in types.
Learn pro advanced Python programming: explore magic methods, including initialization with new and init, destruction with del, unary operators, augmented assignments, and type conversions.
Explore magic methods that improve usefulness by implementing init, str, and add methods in a t shirt inventory class, using black and white shirts to track color and inventory counts.
See how Python's new and init methods create and initialize objects, with new running first and destructor del called when all references are deleted via the garbage collector.
Learn Python string magic methods, especially the str representation. See how format strings with the percent sign invoke the str method and explore related methods like unicode, format, and hash.
Master operator overloading in Python by implementing magic methods for arithmetic and assignment operators, including multiply, add, and subtract operations, and compare objects with the corresponding comparison operators.
Learn how Python's augmented assignment uses magic methods to perform in-place updates, updating self.x with self.x plus other.x when using object1 += object2.
Explore python's magic methods for binary operators: vanilla, reverse, and inplace; see how left side methods are invoked, how reverse methods handle absent operators, and how augmented assignments work.
Explore basics of thread programming in Python, compare concurrency with parallelism, examine multiprocessing and multithreading, create and manage threads in Python, distinguish demon and non demon threads, and enumerate threads.
Explore concurrency and parallelism in Python thread programming, distinguishing overlapping tasks on single vs multi-core CPUs, and compare their control flow, CPU vs IO bound behavior, and debugging.
Explore how multiprocessing and multi threading differ in python, detailing symmetric and asymmetric multiprocessing, shared memory versus separate address space, and how each affects performance and task handling.
Explore thread programming in Python, learning how threads share resources within a process, differ from processes, enable parallel execution on multiprocessor systems, and how to avoid race conditions.
Learn how the Python threading module provides a high-level interface over the lower level thread module and core functions such as active_count, current_thread, enumerate, and stack_size to manage multi-threading.
Create and manage threads in Python using the threading module by instantiating thread objects with a target function, starting them, and optionally passing arguments to print outputs concurrently.
Determine the current thread in Python using threading, showing named and unnamed threads. Also learn to log thread names with the logging module and to name threads by purpose.
Explore the difference between daemon and non daemon threads in Python, using set daemon, join with timeout, and checking if the daemon is alive to observe exit behavior.
Explore enumerating threads in Python: enumerate returns active thread instances, excluding the main thread for joining to avoid deadlock, and join daemon threads to finish.
Explore the arcade module in Python to create 2D games with static images and moving animations, including user controlled or automatic behaviors, coins, enemies, and hurdles.
Learn to create a sad face in Python using the arcade module. Set up a 700 by 700 window, draw circle eyes, and a curved smile.
Learn to create an auto timer in Python using the arcade module to manage time-limited events in 2d games, such as energy boosters that vanish after a set duration.
Explore the arcade module in Python by building a snowfall animation with randomly positioned snowflakes, varying sizes and speeds, and a reusable snowflake class.
Build a revolving radar visualization in Python using the arcade module by drawing a circle with a rotating needle, updating the angle with radians per tick via sin and cos.
Learn to build a user controlled moving rectangle in Python with the arcade module, handling arrow key input, drawing and updating, and enforcing window bounds and speed and size parameters.
Learn to build a pdf text to audio app by extracting text from pdfs and converting it to speech, then integrate the components into a tkinter GUI.
Learn about Pypdf2 and Pi three modules for a pdf audio reader, beyond Tkinter, including features like metadata extraction, splitting, merging, and text-to-speech customization.
Learn to extract text from a PDF using PyPDF2 by opening the file in read-binary mode, iterating pages, concatenating extracted text, and printing the result.
Learn to implement the pdf audio reader's text-to-speech engine, configure rate and voice, and speak 'hello world' using run and wait, with future gui integration.
Build a pdf to audio reader with tkinter and PyPDF2 to extract text and convert it to speech, with a select pdf file button and speech rate control.
Complete the pdf audio reader graphical user interface by wiring select file, male and female voice options, and play/stop controls in Tkinter, including extract text and speak text functions.
Set up a main function to control the pdf reader flow and main loop. Initialize extracted text and rate variables, configure the pi three engine for Tkinter.
Code the extract text function for the PDF audio reader app by opening a PDF via a file dialog, creating a PDF reader, iterating pages, and concatenating extracted text.
Finalize the speak_text function by obtaining the rate via get, configuring engine.setProperty for rate and voice, building a voices array with male and female options, and speaking the extracted text.
In this course, I am going to make you a professional programmer by teaching you Advance Level Programming in Python. The Basic of any programming language is not enough to make real time applications therefor, i have covered most of the Advance Level Concepts in depth in this course. As grabbing the main concept behind Advance Topics is not simple therefor, special attention is given to the intuition part of each concept where we gonna understand these concepts with proper animated slides.
Also not only understanding these advance concepts are important but to make something real out of it is very important or else there is no reason to learn Advance Programming therefor we will also make real time Advance level Applications in Python using Advance level concepts. We will also learn Machine Learning in Python in depth by covering the Mathematics behind each model as well. Also we will use these Machine Learning Models to make something real out of it.
I believe that after taking this course, you gonna feel much more satisfied and comfortable with your programming skill in Python as you will then be a professional programmer who is capable to give any job interview.. Also after taking this course, learning any Advance Level concept in any other language will be 10x more simpler.
I wish you very best for the Course.