Book Image

Python Real-World Projects

By : Steven F. Lott
5 (1)
Book Image

Python Real-World Projects

5 (1)
By: Steven F. Lott

Overview of this book

In today's competitive job market, a project portfolio often outshines a traditional resume. Python Real-World Projects empowers you to get to grips with crucial Python concepts while building complete modules and applications. With two dozen meticulously designed projects to explore, this book will help you showcase your Python mastery and refine your skills. Tailored for beginners with a foundational understanding of class definitions, module creation, and Python's inherent data structures, this book is your gateway to programming excellence. You’ll learn how to harness the potential of the standard library and key external projects like JupyterLab, Pydantic, pytest, and requests. You’ll also gain experience with enterprise-oriented methodologies, including unit and acceptance testing, and an agile development approach. Additionally, you’ll dive into the software development lifecycle, starting with a minimum viable product and seamlessly expanding it to add innovative features. By the end of this book, you’ll be armed with a myriad of practical Python projects and all set to accelerate your career as a Python programmer.
Table of Contents (20 chapters)
19
Index

8.5 Extras

Here are some ideas for you to add to this project.

8.5.1 Revise all previous chapter models to use Pydantic

The previous chapters used dataclass definitions from the dataclasses module. These can be shifted to use the pydantic.dataclasses module. This should have minimal impact on the previous projects.

We can also shift all of the previous acceptance test suites to use a formal schema definition for the source data.

8.5.2 Use the ORM layer

For SQL extracts, an ORM can be helpful. The pydantic module lets an application create Python objects from intermediate ORM objects. This two-layer processing seems complex but permits detailed validation in the Pydantic objects that aren’t handled by the database.

For example, a database may have a numeric column without any range provided. A Pydantic class definition can provide a field definition with ge and le attributes to define a range. Further, Pydantic permits the definition of a unique data type with unique validation...