Learning Path ⋅ Skills: Zen of Python, PEP 8, Application Layouts, Duck Typing, Type Checking, Type Hints, Code Documentation, MkDocs, Code Quality, PyLint
In this learning path, you’ll learn to write cleaner, more Pythonic code. You’ll start with the Zen of Python and PEP 8 style conventions, then explore code quality tools and application structure. From there, you’ll learn about duck typing, type checking with type hints, and how to document your Python projects with MkDocs.
Learning Path ⋅ 14 Resources
Start with the guiding principles behind Python’s design. You’ll explore the Zen of Python, learn PEP 8 style conventions, and practice writing idiomatic loops and comprehensions.
Tutorial
The Zen of Python is a collection of 19 guiding principles for writing good Python code. Learn its history, meaning, and hidden jokes.
Course
What are the programming idioms unique to Python? This course is a short overview for people coming from other languages and an introduction for beginners to the idiomatic practices within Python. You'll cover truth values, looping, DRY principles, and the Zen of Python.
Course
Learn how to write high-quality, readable code by using the Python style guidelines laid out in PEP 8. Following these guidelines helps you make a great impression when sharing your work with potential employers and collaborators. This course outlines the key guidelines laid out in PEP 8.
Course
See how you can make your loops more Pythonic if you're coming to Python from a C-style language. You'll learn how you can get the most out of using range(), xrange(), and enumerate(). You'll also see how you can avoid having to keep track of loop indexes manually.
Course
This short course breaks down Python list comprehensions for you step by step. See how Python's comprehensions can be transformed from and to equivalent "for"-loops so you'll know exactly what's going on behind the scenes.
Learn to measure and improve your code quality. You’ll use linting tools like PyLint, structure your projects effectively, and practice refactoring for simplicity.
Tutorial
Learn about code quality and the key factors that make Python code high-quality. You'll explore effective strategies, powerful tools, and best practices to elevate your code to the next level.
Course
See how to install and set up the PyLint code linter tool. You'll learn why you should use code linters like PyLint, Flake8, PyFlakes, or other static analysis tools—and how they can help you write cleaner and more Pythonic code.
Course
This course is a reference guide to common Python application layouts and project structures for command-line applications, web applications, and more.
Tutorial
Learn how to refactor your Python application to be simpler and more maintainable and have fewer bugs. You'll cover code metrics, refactoring tools, and common anti-patterns.
Explore how Python handles types. You’ll learn about duck typing, static type checking with type hints, and how to annotate functions with multiple return types.
Course
Learn about duck typing in Python---a type system based on an object's behavior rather than inheritance. By taking advantage of duck typing, you can create flexible and decoupled sets of Python classes that work together or independently.
Course
In this course, you'll look at Python type checking. Traditionally, types have been handled by the Python interpreter in a flexible but implicit way. Recent versions of Python allow you to specify explicit type hints that can be used by different tools to help you develop your code more efficiently.
Course
Learn how to define multiple return types using type hints in Python. This course covers working with single or multiple pieces of data, defining type aliases, and performing type checking using a third-party static type checker tool.
Well-documented code is easier to maintain and collaborate on. You’ll learn how to write effective docstrings and build project documentation sites with MkDocs.
Course
Whether you're documenting a small script or a large project, whether you're a beginner or seasoned Pythonista, this guide will cover everything you need to know.
Course
Learn how to build professional documentation for a Python package using MkDocs and mkdocstrings. These tools allow you to generate nice-looking and modern documentation from Markdown files and, more importantly, from your code's docstrings.
Congratulations on completing this learning path! You’ve learned to write clean, idiomatic Python using PEP 8, type hints, code quality tools, and documentation best practices.
Continue your intermediate Python journey with the next learning path:
Learning Path
9 Resources ⋅ Skills: Unit Testing, Doctest, Mock Object Library, Pytest, Continuous Integration, Docker, Code Quality, GitHub Actions, Software Testing, CI/CD
You might also be interested in these related learning paths: