Reuven Lerner's Python Courses/Advanced Python data structures

  • $240

Advanced Python data structures

Stretch built-in data structures to their limits, and explore collections in Python's standard library.

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

Comfortable with strings, lists, tuples, and dicts?

If you've been programming in Python for any length of time, then you're almost certainly familiar with the basic, built-in data structures: Strings, lists, tuples, and dicts.  You probably use them every day, both by themselves, in combinations, and in classes that you write.

This course takes you beyond the basics, to really get the most out of Python's data structures.

First, we review the basic, built-in structures — not for their basic functionality, but rather to understand how they work behind the scenes, and how some of the more unusual and advanced methods can save you time and make your code clearer.

Next, we look at how we can combine Python's built-in collections in five ways: lists of lists, lists of tuples, lists of dicts, dicts of dicts, and dicts of lists.  We compare the efficiency and coding that's necessary, considering how and when we would need each one.

Finally, we look at some of the useful data structures provided to us in Python's standard library — including such useful tools as Counter and Enums.

If you want to make your Python code sing, then you need to truly master Python's data structures. This course will help you to do so — with seven hours of video, and numerous exercises.

Contents

00 Welcome

Section 1: Digging deeper into basic data structures

Section 1.ipynb
01 Object ids
Preview
02 is vs ==
03 When to use is
04 sys.getsizeof
05 Boolean context
06 How big is an int?
07 Binary, hex, and octal numbers
08 Timing number conversions
09 Size and limit of floats
Preview
10 String interning
11 str.splitlines
12 Combining and interpolating strings
13 List memory usage
14 Creating lists efficiently
15 Splitting and unpacking
16 Tuples
16a Sequences
17 Exercises 1
exercises-1.txt
18 Exercise solutions 1
19 Creating dicts
20 Setting and retrieving key-value pairs
21 Iterating over dicts
22 Merging dicts
23 dict.fromkeys
24 Removing items from a dict
25 Sets and frozensets
26 Exercises 2
exercises-2.txt
27 Exercise 2 solutions

Section 2: Combinations of basic data structures

Section 2.ipynb
28 Complex data structures
29 Lists of lists
Preview
30 Movie store with a list of lists
31 Movie store with a list of tuples
32 Exercises 3
exercises-3.txt
33 Exercise 3 solutions
34 Lists of dicts
35 Exercise 4
exercises-4.txt
36 Exercise 4 solutions
37 Dict of dicts
38 Exercise 5
exercises-5.txt
39 Exercise 5 solution
40 Dict of lists
41 Exercise 6
exercises-6.txt
words.zip
42 Exercise 6 solution
43 Advanced data structures in the standard library

Section 3: Useful items from the standard library

Section 3 — Complex data types from the standard library.ipynb
44 Decimal
45 Named tuples
Preview
46 Exercise 7
exercises-7.txt
47 Exercise 7 solution
48 defaultdict
49 OrderedDict
50 Counter
51 Exercise 8
exercises-8.txt
52 Exercise 8 solutions
53 Enums
54 Exercise 9
exercises-9.txt
55 Exercise 9 solution
56 Conclusion

FAQs

What version of Python do you use?

This course uses Python 3.7, the most recent as of when I recorded it.

Can I buy this course for my team at work?

Yes, I have sold these video courses to many companies. Contact me  (at reuven@lerner.co.il) for details.

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.

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?

Absolutely! I give an automatic discount to any permanent resident of a country outside of the world's 30 richest countries.  Just e-mail me (reuven@lerner.co.il), and I'll send you the appropriate coupon code.

The coronavirus pandemic has affected my finances. Can I get a discount?

Yes, I give an automatic discount to anyone who has suffered financial hardship as a result of the novel coronavirus pandemic of 2020.  Just e-mail me (reuven@lerner.co.il), and I'll send you the appropriate coupon code.

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.

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.