Books & Videos

Table of Contents

Chapter: Introduction

Python Programming Language: Introduction

02m 52s

Chapter: Lesson 1: Working Environment


00m 25s

1.1 Starting, Stopping, and Typing Commands into the Interactive Interpreter

04m 25s

1.2 Project: Catching the Bus

04m 55s

1.3 Project: Reading Command Line Arguments and Making a Script

03m 58s

1.4 Debugging

05m 33s

Chapter: Lesson 2: Program Structure and Execution Model


00m 22s

2.1 Project: Mortgage Calculator

07m 39s

2.2 Project: Formatted Output and File I/O

05m 42s

Chapter: Lesson 3: Text Processing and Files


00m 26s

3.1 File and String Basics

06m 58s

3.2 Project: Reading from a File and Performing a Calculation

04m 39s

3.3 Project: Using the CSV Module to Read Data

04m 28s

Chapter: Lesson 4: Functions and Error Handling


00m 27s

4.1 Defining and Using Simple Functions

02m 49s

4.2 Project: Moving a Script into a Function

03m 35s

4.3 Project: Handling Bad Data and Exception Handling

07m 3s

4.4 Project: Function Design Considerations

10m 43s

Chapter: Lesson 5: Data Structures and Data Manipulation


00m 34s

5.1 Basic Material: Tuples, Lists, Sets, and Dicts

06m 32s

5.2 Project: Building a Data Structure from a File

08m 45s

5.3 Data Manipulation

13m 18s

5.4 Example: Sorting and Grouping

06m 52s

Chapter: Lesson 6: Library Functions and Import


00m 37s

6.1 Module Basics

11m 21s

6.2 Project: Writing a General Purpose CSV Parsing Module

08m 1s

6.3 Making a Package

08m 53s

Chapter: Lesson 7: Classes and Objects


00m 46s

7.1 Introduction: From Simple Data Structures to Classes

06m 25s

7.2 Understanding Attribute Access

08m 6s

7.3 Advanced: Class Methods and Alternate Constructors

07m 9s

Chapter: Lesson 8: Inheritance


00m 41s

8.1 Inheritance Concepts

06m 58s

8.2 Inheritance in Practice: Building an Extensible Library

08m 21s

8.3 Advanced Inheritance

09m 24s

8.4 Designing for Inheritance

05m 22s

8.5 Defensive Programming with Abstract Base Classes

04m 32s

8.6 Advanced: How Inheritance Actually Works

05m 47s

Chapter: Lesson 9: Python Magic Methods (a.k.a., Speaking Python)


00m 36s

9.1 Background: Use of Magic Methods to Implement Operators

02m 15s

9.2 Making Objects Printable and Debuggable

03m 55s

9.3 Making a Custom Container Object

07m 17s

9.4 Making a Custom Context Manager

05m 35s

Chapter: Lesson 10:Encapsulation (Owning the Dot)


00m 42s

10.1 Instance Representation, Attribute Access and Naming Conventions

05m 30s

10.2 Managed Attributes with Properties

10m 9s

10.3 Managed Attributes with Descriptors

12m 17s

10.4 Object Wrappers and Proxies

09m 13s

Chapter: Lesson 11: Higher Order Functions and Closures


00m 33s

11.1 Functions as Objects

07m 6s

11.2 Generating Code with Closures

06m 49s

Chapter: Lesson 12: Metaprogramming and Decorators


00m 39s

12.1 Background: Function Argument Passing and Calling Conventions

04m 2s

12.2 Don't Repeat Yourself—Introducing Decorators

09m 44s

12.3 Decorators with Arguments

07m 2s

12.4 Class Decorators

10m 57s

Chapter: Lesson 13: Metaclasses


00m 47s

13.1 Background: Types and Metaclasses Introduced

09m 20s

13.2 Project: Tracking Subclasses in a Framework

09m 51s

13.3 Project: Filling in Missing Details and Code Generation

07m 14s

Chapter: Lesson 14: Iterators and Generators


00m 45s

14.1 Iteration Protocol and Customization via Generators

08m 40s

14.2 Project: Watching a Real-Time Data Source with a Generator

06m 41s

14.3 Processing Pipelines and Workflows

06m 51s

Chapter: Lesson 15: Coroutines


00m 46s

15.1 Defining and Calling Coroutines with async/await

03m 40s

15.2 Project: Asynchronous Echo Server with Coroutines and asyncio

08m 45s

15.3 Under the Covers: Enhanced Generators

12m 14s

Chapter: Summary

Python Programming Language: Summary

01m 38s