Shopping Cart

Become a Instructor

Mastering python

176 minutes of course content

Review course syllabus

$19.99 $75.00 (taxes calculated at checkout)

100% money-back guarantee  |  Click here to read more

Share this course:
Facebook Google LinkedIn Pinterest Twitter

Course Description

Get to grips with Python best practices and advanced tools to design, distribute, and test your programs

About This Video

  • Explore the immense Python libraries to write efficient, reusable code
  • Create adaptable programs that run on multiple processors with parallel programming
  • Become a Python expert with the help of detailed discussions, illustrated with concrete examples

In Detail

Python is one of the most powerful, flexible, and popular programming languages in the world. Even though Python programs are simple to work with, writing code that is efficient, maintainable, and reusable can be a little tricky for some. The presence of Python's “batteries included” toolbox allows you to easily produce application prototypes or implement new algorithms with minimum efforts.

This course takes you on a journey from the basics of operating in a Python development environment through to advanced topics and master-level techniques. It presents you with a guide to Python and its standard library, focusing on language and library elements that are particularly useful for tool authors and system programmers.


After taking this course, you will be able to:

  • Mastering Python will get you up to speed in everything from basic programming practices to high-end tools and techniques that will help you set apart as a successful Python programmer.
  • We start off with the basics to set up a functioning environment, creating packages, and running them on the command line.
  • Through our journey, we'll highlight the major aspects of managing our Python development environment, handling parallel computation, and mastering asynchronous I/O for improved performance of our system.
  • Finally, we'll learn the secrets of metaprogramming and unit testing in Python arming you with the perfect skillset to be a Python expert.

This course is for professionals within the following business functions:

  • Students who feel they need an extra hour in the day
  • Students who feel that certain activities such as computer work, cooking, or communications take longer than necessary
  • Students who wish to learn about the important theories of productivity, but don't have time to read 10 books about it!
  1. Setting Up the Work Environment - 17 Minutes

    1. The Course Overview
    2. Downloading and Installing Python
    3. Using the Command Line and the Interactive Shell
    4. Installing Packages with pip
    5. Finding Packages in the Python Package Index
  2. Creating a Package - 17 Minutes

    1. Creating an Empty Package
    2. Adding Modules to the Package
    3. Importing One of the Package's Modules from Another
    4. Adding Data Files to the Package
  3. Basic Best Practices - 23 Minutes

    1. PEP 8 and Writing Readable Code
    2. Using Version Control
    3. Using venv to Create a Stable and Isolated Work Area
    4. Getting the Most Out of docstrings Part 1 – PEP 257 and Sphinx
    5. Getting the Most Out of docstrings Part 2 – doctest
  4. Creating a Command-line Utility - 20 Minutes

    1. Making a Package Executable via python – m
    2. Handling Command-line Arguments with argparse
    3. Text-mode Interactivity
    4. Executing Other Programs
    5. Using Shell Scripts or Batch Files to Launch Programs
  5. Parallel Processing - 19 Minutes

    1. Using concurrent.futures
    2. Using Multiprocessing
  6. Coroutines and Asynchronous I/O - 27 Minutes

    1. Understanding Why Asynchronous I/O Isn't Like Parallel Processing
    2. Using the asyncio Event Loop and Coroutine Scheduler
    3. Futures
    4. Making Asynchronous Tasks Interoperate
    5. Communicating across the Network
  7. Metaprogramming - 30 Mintues

    1. Using Function Decorators
    2. Using Function Annotations
    3. Using Class Decorators
    4. Using Metaclasses
    5. Using Context Managers
    6. Using Descriptors
  8. Unit Testing - 23 Minutes

    1. Understanding the Principles of Unit Testing
    2. Using unittest
    3. Using unittest.mock
    4. Using unittest's Test Discovery
    5. Using Nose for Unified Test Discovery and Reporting

About the Expert



Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work. With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now. From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer. Packt courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.
Read more