A weekly Python podcast hosted by Christopher Bailey with interviews, coding tips, and conversation with guests from the Python community. The show covers a wide range of topics including Python programming best practices, career tips, and related software development topics. Join us every Friday morning to hear what's new in the world of Python programming and become a more effective Pythonista.
Starting With FastAPI and Examining Python's Import System
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.
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.
Course Spotlight: Python Modules and Packages: An Introduction
In this course, you’ll explore Python modules and Python packages, two mechanisms that facilitate modular programming. See how to write and import modules so you can optimize the structure of your own programs and make them more maintainable.
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:
- manim: A Community-Maintained Python Framework for Creating Mathematical Animations
- pdfme: Make PDFs Easily
Additional Links:
- Common Python Data Structures (Guide): Real Python
- OrderedDict vs dict in Python: The Right Tool for the Job: Real Python Article
- Python’s Counter: The Pythonic Way to Count Objects: Real Python Article
- Make a Location-Based Web App With Django and GeoDjango: Real Python Article
- Make a Location-Based Web App With Django and GeoDjango: Real Python Course
- Python import: Advanced Techniques and Tips: Real Python Article
- Absolute vs Relative Imports in Python: Real Python Article
- Python Modules and Packages: An Introduction - Real Python Course