Real Python Logo

Episode 72: Starting With FastAPI and Examining Python's Import System

The Real Python Podcast

Aug 06, 2021 45m

Have you heard of FastAPI? An application programming interface is vital to make your software accessible to users across the internet. FastAPI is an excellent option for quickly creating a web API that implements best practices. This week on the show, David Amos is back, and he’s brought another batch of PyCoder’s Weekly articles and projects.

Episode Sponsor:

We share an introduction to FastAPI written by the framework’s author, Sebastián Ramírez. The goal behind the article is to get you started creating production-ready APIs.

David covers an article about the Python import system and how it remains a mystery for many Python developers. We share some additional Real Python resources on the import system and statements.

We cover several other articles and projects from the Python community including, a buffet of specialized data types with Python’s collections module, maps with Django using GeoDjango, PostGIS, and Leaflet, moving SciPy to the Meson build system, what’s new in Python 3.11, a community-maintained Python framework for creating mathematical animations, and easily make PDFs with pdfme.

Topics:

  • 00:00:00 – Introduction
  • 00:02:18 – Python’s collections: A Buffet of Specialized Data Types
  • 00:08:07 – Maps With Django: GeoDjango, PostGIS, and Leaflet
  • 00:12:12 – Moving SciPy to the Meson Build System
  • 00:18:16 – Sponsor: Sentry
  • 00:19:18 – What’s New In Python 3.11
  • 00:24:32 – Behind the Scenes: How the Python Import System Works
  • 00:31:34 – Video Course Spotlight
  • 00:32:40 – Using FastAPI to Build Python Web APIs
  • 00:38:42 – manim: A Community-Maintained Python Framework for Creating Mathematical Animations
  • 00:41:56 – pdfme: Make PDFs Easily
  • 00:44:42 – Thanks and goodbye

Show Links:

Python’s collections: A Buffet of Specialized Data Types – Python has a number of useful data types beyond the built-in lists, tuples, dicts, and sets. In this tutorial, you’ll learn all about the series of specialized container data types in the collections module from the Python standard library. Learning the collections module is a great way to level up your Python programming knowledge!

Maps With Django: GeoDjango, PostGIS, and Leaflet – This quickstart guide shows you how to create a web map using Django’s GeoDjango module. Data for the map is stored in a PostgreSQL database using the PostGIS extension, and Leaflet, a lightweight JavaScript library for interactive maps, is used on the front-end. You’ll not only learn how to set up the Django application and display the map but also add markers to the map and automatically center the map on the application user’s location.

Moving SciPy to the Meson Build System – In accordance with PEP 632, distutils will be deprecated in Python 3.10 and in Python 3.12 it will be removed. This posed a big problem for SciPy, since it’s build system depends on NumPy’s distutils module — an extension of Python’s built-in distutils. The SciPy maintainers set out to find a new build system and settled on Meson, which solves a number of build issues and even scores a 4x speed-up on build times!

What’s New In Python 3.11 – Python 3.10 is still in beta, but work on Python 3.11 has already begun. Big changes include some major improvements to tracebacks as well as a new cube root function in the math module.

Behind the Scenes: How the Python Import System Works – Importing a Python module is probably one of the most used language features. But Python’s import system remains a mystery to many Python developers, even folks with years of experience. This in-depth article explores how the import system works from the top down. You’ll learn everything from the difference is between absolute and relative imports to how Python searches for modules and packages and resolves naming conflicts.

Using FastAPI to Build Python Web APIs – In this guide, written by FastAPI creator Sebastián Ramírez, you’ll learn the main concepts of FastAPI and how to use it to quickly create web APIs that implement best practices by default. By the end of it, you will be able to start creating production-ready web APIs.

Projects:

Additional Links: