• $180

Object-oriented Python

Learn the how and why of Python objects — and write more powerful code in less time

Get this course, and many others, as part of my LernerPython membership, at https://LernerPython.com.

Overview

Object-oriented programming is a common — maybe even the dominant — style of programming in use today.   The  whole point of objects is to make your code easier to write, maintain,  and reuse.  But in many languages, these advantages get lost in a sea of syntax and buzzwords, making it hard for newcomers to adjust.

By contrast, Python's objects are simple to write, understand, and maintain. They are more flexible than their counterparts in static, compiled languages, And even newcomers to objects can start to define and use classes, methods, and instances in a short period of time.

But: Just because  Python's objects are easy to learn and use doesn't mean that they're  always easy to understand. In order  to use Python objects correctly, you need to understand how Python's object system works — and in particular, how attributes work.

This course,  based on the  Python courses I give to companies around the world (e.g., Apple, Cisco, IBM, Intel, PayPal, Western Digital, and VMWare), introduces Python objects from the ground up. It's aimed at beginner-to-intermediate Python developers who have used and even written Python objects before, but don't understand how the object system really works.  Through numerous video  lessons and exercises, this course will teach you what you need in order to take advantage of Python's objects.  I cover such topics as:
  • What is an object?
  • Setting and retrieving attributes
  • Creating classes
  • The role of __init__ 
  • The role of self
  • Writing and calling methods
  • Attribute search, and why we care
  • Class attributes
  • Inheritance

This course, like my others, aims to make you a more fluent — and thus more valuable — Python developer. And like my other courses, it has a 100% satisfaction guarantee.

What do you get:
  • More than 4 hours of video lectures
  • 15 exercises to practice and learn — the same ones I use at my on-site courses
  • The Jupyter notebook I used in my screencasts
  • PDF slides from my on-site courses
  • Access to my live, video office hours

Contents

Section 1: Introduction

01 Welcome
  • 3 mins
  • 75.7 MB
Preview
02 What is object oriented programming?
  • 9 mins
  • 326 MB

Section 2: Defining a class

03 What are Python objects?
  • 16 mins
  • 692 MB
04 Methods vs. functions
  • 6 mins
  • 230 MB
05 The simplest Python class
  • 9 mins
  • 368 MB
06 Adding attributes
  • 5 mins
  • 186 MB
07 __init__
  • 9 mins
  • 367 MB
Preview
08 __init__ and parameters
  • 6 mins
  • 256 MB
09 More examples of objects
  • 10 mins
  • 422 MB
10 Class exercises
  • 5 mins
  • 224 MB
exercises-1.txt
  • 1022 Bytes
11 Class exercise solutions
  • 14 mins
  • 591 MB
Preview

Section 3: Methods

12 Methods
  • 10 mins
  • 423 MB
13 Method examples
  • 12 mins
  • 489 MB
14 Method exercises
  • 6 mins
  • 236 MB
exercises-2.txt
  • 1016 Bytes
15 Method exercise solutions
  • 27 mins
  • 1.21 GB
16 Visualizing methods
  • 6 mins
  • 264 MB
Preview

Section 4: Class attributes

17 Classes vs. functions
  • 7 mins
  • 274 MB
18 Class attributes
  • 15 mins
  • 621 MB
19 Class attribute exercises
  • 4 mins
  • 139 MB
exercises-3.txt
  • 622 Bytes
20 Class attribute exercise solutions
  • 8 mins
  • 350 MB

Section 5: Inheritance

21 Basic inheritance
  • 13 mins
  • 547 MB
exercises-4.txt
  • 605 Bytes
22 Inheritance exercises
  • 3 mins
  • 112 MB
23 Inheritance exercise solutions
  • 10 mins
  • 416 MB
24 More on inheritance
  • 10 mins
  • 442 MB

Section 6: Magic methods

25 len
  • 5 mins
  • 210 MB
Preview
26 __str__ and __repr__
  • 8 mins
  • 330 MB
27 Magic method exercises
  • 4 mins
  • 147 MB
exercises-5.txt
  • 923 Bytes
28 Magic method exercise solutions
  • 13 mins
  • 547 MB
29 Magic methods everywhere
  • 7 mins
  • 279 MB

Section 7: Summary project

30 Summary exercise
  • 6 mins
  • 260 MB
exercises-6.txt
  • 960 Bytes
31 Summary exercise solution
  • 17 mins
  • 712 MB

Section 8: Conclusion

32 Summary
  • 4 mins
  • 120 MB

Resources

Python objects.ipynb
  • 102 KB
11 Objects.pdf
  • 112 KB

Become a better developer.

I'm Reuven — and for 20 years, I've spent just about every day teaching Python, data science, and Git at some of the world's best-known companies. 

I've recorded my most popular courses here, for you to learn these skills — even if you don't work for a big company.

After taking my courses, you'll be able to to solve bigger problems in less time — allowing you to do your current job better, or to find a new, better job.

FAQ

I bought your previous "Object oriented programming in Python," a live recording from the summer of 2017. Do I have to pay for this course?

Not at all!  E-mail me, and I'll send you a coupon code for a free upgrade. My "forever free" policy applies to upgrades and updates to my courses.  This course covers about half of the topics in that "Functional programming" course, although it has more exercises and explanations about comprehensions — and is thus a free upgrade from it.

I'm a student or pensioner. Can I get a discount?

I know very well what it's like to be a student on a limited budget; I spent 11 years (!) on my PhD.  So yes, as with all of my products, there's a student discount.  E-mail me (reuven@lerner.co.il), and I'll send you the appropriate coupon code.

And while I don't yet know what it's like to be a pensioner/retiree, I do understand that it can be similarly challenging. For that reason, I have the same offer: E-mail me, and I'll give you the same discount as I give to students.

What if I dislike the course?

If you didn't get any value from the course, then just e-mail me (reuven@lerner.co.il) and ask for a refund.

This price is far too high for someone living in my country. Do you offer "parity pricing," or something like it, for people outside of the world's wealthiest countries?

Indeed, I do: If your country is not one of the 30 with the highest per-capita GDP (as indicated here, at https://en.wikipedia.org/wiki/List_of_countries_by_GDP_(nominal)_per_capita), then e-mail me.  I'll send you a coupon for 40% off the price, which I believe (hope) makes it more affordable.

Note that this applies to people currently living in one of those non-wealthy countries; not to people originally from there.

What version of Python do you use?

This course uses Python 3.6, the most recent as of when I recorded it.  Just about everything should work the same in Python 2.7, if you're still using it — although the Jupyter notebook that I provide only works in 3.6.

Can I buy this course for my team at work?

The course, as sold here, is for individuals.  However, e-mail me (at reuven@lerner.co.il) if you want to make a group or team purchase, and I'll provide you with an appropriate discount code for each team member to use.

What if I have more questions?

Just e-mail me at reuven@lerner.co.il, and I'll try to answer as quickly as possible.