Python 3: Deep Dive (Part 4 - OOP)
Python 3: Deep Dive (Part 4 - OOP) is a 162-lesson 35 hours 15 minutes self-paced course by Udemy. Python object oriented programming (OOP).
Course facts
- Lessons
- 162
- Duration
- 35 hours 15 minutes
- Level
- All levels
- Language
- English
- Updated
- Instructor
- Udemy
- Price
- Premium
MAIN COURSE TOPICS
what are classes and instances
class data and function attributes
properties
instance, class and static methods
polymorphism and the role special functions play in this
single inheritance
slots
the descriptor protocol and its relationship to properties and functions
enumerations
exceptions
metaprogramming (including metaclasses)
COURSE PREREQUISITES
Please note this is NOT a beginner level course. You must have a strong working knowledge of functional Python programming as well as some practical experience developing Python applications in order to fully benefit from this course.
In-depth functional Python programming
functions, closures, scopes, decorators (using and writing them)
zip, sorted, any, all, and the itertools module in general
sequences, iterables, iterators and generators (what they are and how to implement the corresponding protocols)
generators, yield, and context managers
mapping types, hashing and relation to object equality
some prior knowledge of basic OOP concepts
know how to work with Python virtual environments and pip install
available Jupyter Notebook (freely available) to follow along with the course notebooks
how to use git
[Please note that this is not a cookbook style course - I don't show you how to solve specific problems, but rather a broad and in-depth look at how OOP works in the context of Python, that will allow you to apply these concepts and techniques to your own problems.]
- Strong knowledge of functional Python
- Closures and Decorators
- Iterators, Iterables and Generators
- Mapping Types, Hashing
- Some exposure to basic OOP
- Experienced intermediate Python developers who want a more in-depth understanding of Python OOP
What you'll learn:
- Python Object Oriented Concepts
- Classes
- Methods and Binding
- Instance, Class and Static Methods
- Properties
- Property Decorators
- Single Inheritance
- Slots
- Descriptors
- Enumerations
- Exceptions
- Metaprogramming
Who teaches Python 3: Deep Dive (Part 4 - OOP)? Udemy
Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.
Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.
What lessons are included in Python 3: Deep Dive (Part 4 - OOP)?
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Introduction Demo | 05:56 | |
| 2 | Prerequisites | 08:36 | |
| 3 | Introduction | 02:28 | |
| 4 | Objects and Classes - Lecture | 10:50 | |
| 5 | Objects and Classes - Coding | 04:04 | |
| 6 | Class Attributes - Lecture | 13:09 | |
| 7 | Class Attributes - Coding | 12:17 | |
| 8 | Callable Class Attributes - Lecture | 02:24 | |
| 9 | Callable Class Attributes - Coding | 03:08 | |
| 10 | Classes are Callables - Lecture | 03:19 | |
| 11 | Classes are Callables - Coding | 06:30 | |
| 12 | Data Attributes - Lecture | 05:21 | |
| 13 | Data Attributes - Coding | 11:30 | |
| 14 | Function Attributes - Lecture | 12:36 | |
| 15 | Function Attributes - Coding | 20:16 | |
| 16 | Initializing Class Instances - Lecture | 06:17 | |
| 17 | Initializing Class Instances - Coding | 05:51 | |
| 18 | Creating Attributes at Run-Time - Lecture | 05:36 | |
| 19 | Creating Attributes at Run-Time - Coding | 20:47 | |
| 20 | Properties - Lecture | 16:50 | |
| 21 | Properties - Coding | 23:32 | |
| 22 | Property Decorators - Lecture | 12:08 | |
| 23 | Property Decorators - Coding | 31:07 | |
| 24 | Read-Only and Computed Properties - Lecture | 06:49 | |
| 25 | Read-Only and Computed Properties - Coding | 24:58 | |
| 26 | Deleting Properties - Lecture | 06:10 | |
| 27 | Deleting Properties - Coding | 05:14 | |
| 28 | Some Questions on the Property Class | 03:05 | |
| 29 | Class and Static Methods - Lecture | 11:08 | |
| 30 | Class and Static Methods - Coding | 31:00 | |
| 31 | Python Builtin and Standard Types | 03:25 | |
| 32 | Class Body Scope - Lecture | 05:19 | |
| 33 | Class Body Scope - Coding | 14:37 | |
| 34 | Quick Recap | 04:07 | |
| 35 | Project Description | 10:54 | |
| 36 | Project Solution - TimeZone | 15:30 | |
| 37 | Project Solution - Transaction Numbers | 08:57 | |
| 38 | Project Solution - Account Numbers, Names | 14:49 | |
| 39 | Project Solution - Preferred TimeZone | 04:09 | |
| 40 | Project Solution - Account Balance | 04:16 | |
| 41 | Project Solution - Interest Rate | 08:29 | |
| 42 | Project Solution - Transaction Codes | 02:49 | |
| 43 | Project Solution - Confirmation Codes | 28:18 | |
| 44 | Project Solution - Transactions | 23:04 | |
| 45 | Project Solution - Testing with unittest | 50:53 | |
| 46 | Introduction | 04:58 | |
| 47 | __str__ and __repr__ Methods - Lecture | 03:48 | |
| 48 | __str__ and __repr__ Methods - Coding | 08:24 | |
| 49 | Arithmetic Operators - Lecture | 04:53 | |
| 50 | Arithmetic Operators - Coding | 37:02 | |
| 51 | Rich Comparisons - Lecture | 01:30 | |
| 52 | Rich Comparisons - Coding | 18:03 | |
| 53 | Hashing and Equality - Lecture | 01:54 | |
| 54 | Hashing and Equality - Coding | 08:33 | |
| 55 | Booleans - Lecture | 01:39 | |
| 56 | Booleans - Coding | 08:27 | |
| 57 | Callables - Lecture | 01:53 | |
| 58 | Callables - Coding | 37:44 | |
| 59 | The __del__ Method - Lecture | 03:55 | |
| 60 | The __del__ Method - Coding | 15:09 | |
| 61 | The __format__ Method - Lecture | 02:01 | |
| 62 | The __format__ Method - Coding | 08:02 | |
| 63 | Project Description | 06:37 | |
| 64 | Project Solution | 31:42 | |
| 65 | Introduction | 01:15 | |
| 66 | Single Inheritance - Lecture | 18:23 | |
| 67 | Single Inheritance - Coding | 11:20 | |
| 68 | The object Class - Lecture | 04:48 | |
| 69 | The object Class - Coding | 09:58 | |
| 70 | Overriding - Lecture | 11:43 | |
| 71 | Overriding - Coding | 14:00 | |
| 72 | Extending - Lecture | 00:56 | |
| 73 | Extending - Coding | 16:39 | |
| 74 | Delegating to Parent - Lecture | 12:29 | |
| 75 | Delegating to Parent - Coding | 27:21 | |
| 76 | Slots - Lecture | 07:14 | |
| 77 | Slots - Coding | 05:17 | |
| 78 | Slots and Single Inheritance - Lecture | 08:08 | |
| 79 | Slots and Single Inheritance - Coding | 15:09 | |
| 80 | Project 3 - Description | 08:33 | |
| 81 | Project Solution - Approach and Setup | 12:56 | |
| 82 | Project Solution - Validators and tests | 21:44 | |
| 83 | Project Solution - Resources class and tests | 40:05 | |
| 84 | Project Solution - CPU class and tests | 09:09 | |
| 85 | Project Solution - Storage class and tests | 01:59 | |
| 86 | Project Solution - HDD and SSD classes and tests | 05:09 | |
| 87 | Introduction | 01:15 | |
| 88 | Descriptors - Lecture | 08:23 | |
| 89 | Descriptors - Coding | 09:19 | |
| 90 | Getters and Setters - Lecture | 08:16 | |
| 91 | Getters and Setters - Coding | 21:43 | |
| 92 | Using as Instance Properties - Lecture | 06:26 | |
| 93 | Using as Instance Properties - Coding | 22:09 | |
| 94 | Strong and Weak References - Lecture | 07:31 | |
| 95 | Strong and Weak References - Coding | 20:07 | |
| 96 | Back to Instance Properties - Lecture | 03:37 | |
| 97 | Back to Instance Properties - Coding | 35:35 | |
| 98 | The __set_name__ Method - Lecture | 03:05 | |
| 99 | The __set_name__ Method - Coding | 17:41 | |
| 100 | Property Lookup Resolution - Lecture | 04:43 | |
| 101 | Property Lookup Resolution - Coding | 11:45 | |
| 102 | Properties and Descriptors - Lecture | 02:39 | |
| 103 | Properties and Descriptors - Coding | 21:26 | |
| 104 | Application - Example 1 | 11:20 | |
| 105 | Application - Example 2 | 34:25 | |
| 106 | Functions and Descriptors - Lecture | 01:50 | |
| 107 | Functions and Descriptors - Coding | 16:59 | |
| 108 | Project Description | 03:22 | |
| 109 | Solution - Part 1 | 42:36 | |
| 110 | Solution - Part 2 | 08:08 | |
| 111 | Introduction | 01:01 | |
| 112 | Making the case for Enumerations | 08:12 | |
| 113 | Enumerations - Lecture | 09:48 | |
| 114 | Enumerations - Coding | 19:51 | |
| 115 | Aliases - Lecture | 04:49 | |
| 116 | Aliases - Coding | 09:20 | |
| 117 | Customizing/Extending Enums - Lecture | 03:51 | |
| 118 | Customizing/Extending Enums - Coding | 36:31 | |
| 119 | Automatic Values - Lecture | 04:51 | |
| 120 | Automatic Values - Coding | 21:57 | |
| 121 | Project Description | 04:28 | |
| 122 | Project Solution | 11:43 | |
| 123 | Introduction | 01:20 | |
| 124 | Python Exceptions - Lecture | 13:35 | |
| 125 | Python Exceptions - Coding | 20:41 | |
| 126 | Handling Exceptions - Lecture | 17:42 | |
| 127 | Handling Exceptions - Coding | 56:21 | |
| 128 | Raising Exceptions - Lecture | 06:19 | |
| 129 | Raising Exceptions - Coding | 16:30 | |
| 130 | Custom Exceptions - Lecture | 07:47 | |
| 131 | Custom Exceptions - Coding | 54:12 | |
| 132 | Project Description | 05:23 | |
| 133 | Project Solution | 30:14 | |
| 134 | Introduction | 08:51 | |
| 135 | Decorators and Descriptors - Review | 08:51 | |
| 136 | The __new__ Method - Lecture | 10:27 | |
| 137 | The __new__ Method - Coding | 24:06 | |
| 138 | How Classes are Created - Lecture | 07:12 | |
| 139 | How Classes are Created - Coding | 12:42 | |
| 140 | Inheriting from type - Lecture | 03:01 | |
| 141 | Inheriting from type - Coding | 11:02 | |
| 142 | Metaclasses - Lecture | 05:54 | |
| 143 | Metaclasses - Coding | 08:15 | |
| 144 | Class Decorators - Lecture | 04:43 | |
| 145 | Class Decorators - Coding | 54:11 | |
| 146 | Decorator Classes - Lecture | 04:05 | |
| 147 | Decorator Classes - Coding | 18:23 | |
| 148 | Metaclass vs Class Decorator - Lecture | 01:55 | |
| 149 | Metaclass vs Class Decorator - Coding | 14:49 | |
| 150 | Metaclass Parameters - Lecture | 02:45 | |
| 151 | Metaclass Parameters - Coding | 13:17 | |
| 152 | The __prepare__ Method - Lecture | 02:55 | |
| 153 | The __prepare__ Method - Coding | 21:53 | |
| 154 | Classes, Metaclasses, and __call__ | 12:36 | |
| 155 | Metaprogramming Application 1 | 33:40 | |
| 156 | Metaprogramming Application 2 | 23:11 | |
| 157 | Metaprogramming Application 3 | 31:03 | |
| 158 | Attribute Read Accessors - Lecture | 10:06 | |
| 159 | Attribute Read Accessors - Coding | 37:18 | |
| 160 | Attribute Write Accessors - Lecture | 03:34 | |
| 161 | Attribute Write Accessors - Coding | 11:39 | |
| 162 | Accessors - Application | 19:21 |
Get instant access to all 161 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionWhat courses are similar to Python 3: Deep Dive (Part 4 - OOP)?
-
Updated 2y agoObject-Oriented Programming
By: ProgrammingExpert.ioProgramming languages are often classified based on their syntax, features, and execution models. This course introduces you to the idea of programming paradigm4h 36m5/5 -
Updated 2y agoThe Complete Python Programming Course for Beginners
By: Mosh Hamedani (Code with Mosh)Python is the most popular programming language in the world. It's used by big companies like Google, Facebook, Dropbox, Reddit, Spotify, Quora, etc.11h 56m5/5 -
Updated 2y agoDistributed Tasks Demystified with Celery, SQS & Python
By: UdemyThis course teaches beginners to industry professionals the fundamental concepts of Distributed Programming in the context of python & Django. We look at how t4h 27m -
Updated 2y agoHTMX + Flask: Modern Python Web Apps, Hold the JavaScript
By: Talk Python TrainingHTMX, Flask & Modern Python Web Apps — build dynamic Flask apps with HTMX hypermedia. No JS framework, no build pipeline, full interactivity.3h 3m -
Updated 2y agoDevOps Deployment Automation with Terraform, AWS and Docker
By: UdemyWelcome to the advanced course on how to set up a deployment automation that s capable of handling millions of users!10h 59m5/5 -
Updated 2y agoPython Programming for Developers
By: Mosh Hamedani (Code with Mosh)Finally, a Python course that doesn’t insult your intelligence and assume you know nothing. Let’s face it, you know what a variable and function are - you don’t11h 14m -
FreeClassicThe Ultimate Django Series: Part 1
By: Mosh Hamedani (Code with Mosh)Have you always wanted to learn Web development with Python but didn't know where to start? Tired of lengthy, confusing, and outdated courses?4h 49m5/5 -
Updated 9mo agoCoding with AI
By: Jeremy MorganCoding with AI offers a groundbreaking approach to software development by integrating AI-powered tools into your workflow.
More courses by Udemy
-
Updated 1mo agoReact - The Complete Guide
React: The Complete Guide by Maximilian Schwarzmüller — original 2022 edition covering React hooks, Redux, Context API, Next.js basics.47h 42m5/5 -
Updated 3y agoComplete C# Unity Game Developer 3D
This is the long-awaited sequel to the Complete Unity Developer - one of the most popular e-learning courses on the internet!30h 34m -
Updated 3y agoNest.js Microservices: Build & Deploy a Scaleable Backend
Nest.js is an incredible backend framework that allows us to build scaleable Nodejs backends with very little complexity. A Microservice architecture is a popul5h 39m5/5 -
Updated 3y agoThe HTML & CSS Bootcamp 2023 Edition
Brand new HTML & CSS course, just released in February 2023 Check out the promo video to see the beautiful, responsive projects we build in this course!37h 18m5/5 -
Updated 3y agoMicroservices with Node JS and React
Event-Based Architecture? Covered! Server side rendering with React? Yep. Scalable, production-ready code? Its here!54h 13m5/5 -
FreeClassic100 Days of Code - The Complete Python Pro Bootcamp for 2023
Watch the 100 Days of Code Python Pro Bootcamp free: 100 daily projects covering Python basics, web scraping, data science, automation and GUI apps.58h 35m5/5