Python: Project/Package Management

Python logo

Course Outline

While the focus of Python: The Language Fundamentals and Python: More Language Features is on programming and using the language most effectively (i.e., fun), this is not enough. Any nontrivial project also needs to consider aspects that are not exactly that kind of fun:

  • Code quality and testing

  • Structure

  • Packaging

  • Dependency management

This course covers these aspects by providing insight into Python’s rich set of non-fun tools.

  • Python Package Index (PyPI), and package installation

  • Virtual environments

  • setuptools

  • Unittesting (either unittest or pytest will be used)

Prerequisites

The attendees should be clearly Devops friendly, so to say, and fluent on the commandline (can be learned in Linux Basics: A Gentle Introduction). Python programming is sure helpful, especially as unit testing is part of the course. (Can be learned here.)