Mastering Python - Second Edition

  • Section 1: Python Primer

    This section serves as a quick introduction to the Python programming language or as a reminder for those who've been away from the language for a while.

    • The Course Overview
    • Python Basic Syntax and Block Structure
    • Built-in Data Structures and Comprehensions
    • First-Class Functions and Classes
    • Extensive Standard Library
    • New in Python 3.5

    Browse Videos
  • Section 2: Setting Up

    Provide the basics to get started in a functioning environment.

    • Downloading and Installing Python
    • Using the Command-Line and the Interactive Shell
    • Installing Packages with pip
    • Finding Packages in the Python Package Index

    Browse Videos
  • Section 3: Making a Package

    This section is a step-by-step guide to create a new Python package.

    • Creating an Empty Package
    • Adding Modules to the Package
    • Importing One of the Package's Modules from Another
    • Adding Static Data Files to the Package

    Browse Videos
  • Section 4: Basic Best Practices

    This section covers simple things that are big labor savers in the long run.

    • PEP 8 and Writing Readable Code
    • Using Version Control
    • Using venv to Create a Stable and Isolated Work Area
    • Getting the Most Out of docstrings 1: PEP 257 and docutils
    • Getting the Most Out of docstrings 2: doctest

    Browse Videos
  • Section 5: Making a Command-Line Utility

    This section describes how to turn a package into a program that can be run from the command line.

    • Making a Package Executable via python -m
    • Handling Command-Line Arguments with argparse
    • Interacting with the User
    • Executing Other Programs with Subprocess
    • Using Shell Scripts or Batch Files to Run Our Programs

    Browse Videos
  • Section 6: Parallel Processing

    This section describes how to spread computational tasks across multiple processors.

    • Using concurrent.futures
    • Using Multiprocessing

    Browse Videos
  • Section 7: Coroutines and Asynchronous I/O

    This section describes Python's asynchronous event loop and how to use it.

    • Understanding Why This Isn't Like Parallel Processing
    • Using the asyncio Event Loop and Coroutine Scheduler
    • Waiting for Data to Become Available
    • Synchronizing Multiple Tasks
    • Communicating Across the Network

    Browse Videos
  • Section 8: Metaprogramming

    This section describes various approaches to metaprogramming and programmable syntax in Python.

    • Using Function Decorators
    • Function Annotations
    • Class Decorators
    • Metaclasses
    • Context Managers
    • Descriptors

    Browse Videos
  • Section 9: Unit Testing

    This section describes automated unit testing in Python.

    • Understanding the Principles of Unit Testing
    • Using the unittest Package
    • Using unittest.mock
    • Using unittest's Test Discovery
    • Using Nose for Unified Test Discover and Reporting

    Browse Videos
  • Section 10: Reactive Programming

    This section describes the concepts behind reactive programming and introduces the RxPY reactive programming framework.

    • What Does Reactive Programming Mean?
    • Building a Simple Reactive Programming Framework
    • Using the Reactive Extensions for Python (RxPY)

    Browse Videos
  • Section 11: Microservices

    This section talks about what microservices are and why they are useful, and introduces creating microservices using either Flask or nameko.

    • Microservices and the Advantages of Process Isolation
    • Building a High-Level Microservice with Flask
    • Building a Low-Level Microservice with nameko

    Browse Videos
  • Section 12: Extension Modules and Compiled Code

    This section talks about when it makes sense to rewrite part of a program in a compiled language and introduces ctypes and cython.

    • Advantages and Disadvantages of Compiled Code
    • Accessing a Dynamic Library Using ctypes
    • Interfacing with C Code Using Cython

    Browse Videos
View Larger

Next Prev