Books & Videos

Table of Contents

Chapter: Python Primer

The Course Overview

03m 24s

Python Basic Syntax and Block Structure

11m 54s

Built-in Data Structures and Comprehensions

08m 54s

First-Class Functions and Classes

05m 49s

Extensive Standard Library

05m 56s

New in Python 3.5

06m 1s

Chapter: Setting Up

Downloading and Installing Python

05m 16s

Using the Command-Line and the Interactive Shell

04m 1s

Installing Packages with pip

03m 16s

Finding Packages in the Python Package Index

04m 29s

Chapter: Making a Package

Creating an Empty Package

05m 50s

Adding Modules to the Package

05m 30s

Importing One of the Package's Modules from Another

05m 26s

Adding Static Data Files to the Package

02m 53s

Chapter: Basic Best Practices

PEP 8 and Writing Readable Code

07m 50s

Using Version Control

04m 47s

Using venv to Create a Stable and Isolated Work Area

04m 41s

Getting the Most Out of docstrings 1: PEP 257 and docutils

08m 0s

Getting the Most Out of docstrings 2: doctest

04m 4s

Chapter: Making a Command-Line Utility

Making a Package Executable via python -m

05m 51s

Handling Command-Line Arguments with argparse

06m 21s

Interacting with the User

04m 39s

Executing Other Programs with Subprocess

09m 9s

Using Shell Scripts or Batch Files to Run Our Programs

03m 0s

Chapter: Parallel Processing

Using concurrent.futures

13m 52s

Using Multiprocessing

11m 22s

Chapter: Coroutines and Asynchronous I/O

Understanding Why This Isn't Like Parallel Processing

08m 1s

Using the asyncio Event Loop and Coroutine Scheduler

06m 52s

Waiting for Data to Become Available

03m 29s

Synchronizing Multiple Tasks

06m 17s

Communicating Across the Network

03m 45s

Chapter: Metaprogramming

Using Function Decorators

06m 45s

Function Annotations

07m 8s

Class Decorators

05m 52s


05m 35s

Context Managers

05m 52s


05m 37s

Chapter: Unit Testing

Understanding the Principles of Unit Testing

05m 7s

Using the unittest Package

07m 27s

Using unittest.mock

06m 12s

Using unittest's Test Discovery

04m 30s

Using Nose for Unified Test Discover and Reporting

03m 42s

Chapter: Reactive Programming

What Does Reactive Programming Mean?

02m 49s

Building a Simple Reactive Programming Framework

07m 21s

Using the Reactive Extensions for Python (RxPY)

10m 21s

Chapter: Microservices

Microservices and the Advantages of Process Isolation

04m 12s

Building a High-Level Microservice with Flask

09m 59s

Building a Low-Level Microservice with nameko

06m 24s

Chapter: Extension Modules and Compiled Code

Advantages and Disadvantages of Compiled Code

04m 41s

Accessing a Dynamic Library Using ctypes

07m 59s

Interfacing with C Code Using Cython

12m 34s