Episode 74: Python's Assignment Expressions and Fixing a Botched Release to PyPI
The Real Python Podcast
Aug 20, 2021 58m
Have you started to use Python’s assignment expression in your code? Maybe you have heard them called the walrus operator. Now that the controversy over the introduction in Python 3.8 has settled down, how can you use assignment expressions effectively in your code? This week on the show, David Amos is back, and he’s brought another batch of PyCoder’s Weekly articles and projects.
Episode Sponsor:
David shares a recent article by previous guest Brett Cannon about what to do if you botch a release to PyPI. It’s a valuable resource to keep bookmarked for when things go sideways. We also talk about a recent project by Brett, a Python launcher for Unix based operating systems.
We cover several other articles and projects from the Python community including, a Python framework with a built-in database and authorization support from Replit, do coders learn how to use entire libraries just from the documentation, how to use sleep()
to code a Python uptime bot, monitor your home’s temperature and humidity with Raspberry Pis and Prometheus, and a fast Settlers of Catan Python implementation with a strong AI player.
Course Spotlight: Using sleep() to Code a Python Uptime Bot
In this course, you’ll learn how to add time delays to your Python programs. You’ll use the built-in time module to add Python sleep() calls to your code. To practice, you’ll use time.sleep() when making an uptime bot that checks whether a website is still live.
Topics:
- 00:00:00 – Introduction
- 00:02:43 – The Walrus Operator: Python 3.8 Assignment Expressions
- 00:12:41 – Replit.web: Python Framework With Built-in Database and Auth
- 00:16:55 – Sponsor: Gather
- 00:17:39 – Do Coders Learn How to Use Entire Libraries Just From the Docs?
- 00:26:15 – Using sleep() to Code a Python Uptime Bot
- 00:31:53 – Monitor Home Temperature and Humidity With Raspberry Pis and Prometheus
- 00:39:51 – Video Course Spotlight
- 00:40:57 – What to Do When You Botch a Release on PyPI
- 00:47:25 – catanatron: Fast Settlers of Catan Python Implementation
- 00:50:37 – python-launcher: Python Launcher for Unix
- 00:56:59 – Thanks and goodbye
Show Links:
The Walrus Operator: Python 3.8 Assignment Expressions – In this tutorial, you’ll learn about assignment expressions and the walrus operator. The biggest change in Python 3.8 was the inclusion of the :=
operator, which you can use to assign variables in the middle of expressions. You’ll see several examples of how to take advantage of this new feature.
Replit.web: A Python Framework With Built-in Database and Auth Support – The folks over at replit have released a new Python web framework with built-in authentication and database support and, more interestingly, hosting. In a few lines of code, you can have a Python web app connected to a database, authenticating users, and hosted on replit. This could be a great tool for quickly building and hosting prototypes or experimental projects.
Do Coders Really Learn How to Use Entire Libraries Just From the Documentation? – How do you learn a new library? Do you start with the docs? What do you do if the documentation is lacking? Or do you first search for video lessons or written tutorials?
Using sleep() to Code a Python Uptime Bot – Learn how to add time delays to your Python programs. You’ll use the built-in time module to add Python sleep()
calls to your code. To practice, you’ll use time.sleep()
when making an uptime bot that checks whether a website is still live.
Monitor Your Home’s Temperature and Humidity With Raspberry Pis and Prometheus – Do you enjoy collecting and analyzing data, or are you looking for a fun project to improve your data skills? Do you also enjoy tinkering with hardware? Then this project might be a fun one for you to check out! Learn how to set up a RaspberryPi using Prometheus to collect and monitor temperature sensor data.
What to Do When You Botch a Release on PyPI – Mistakes happen to everyone. But what do you do if you make a mistake when releasing a package to PyPI? Don’t panic! There are a number of things you can do to fix a bad release. This article walks you through several scenarios and suggested solutions.
Projects:
- catanatron: Fast Settlers of Catan Python Implementation and Strong AI Player
- python-launcher: Python Launcher for Unix
Additional Links:
- Python sleep(): How to Add Time Delays to Your Code: Real Python Article
- Cool New Features in Python 3.8: Real Python Article
- PEP 572 – Assignment Expressions: Python.org
- Prometheus
- Set up temperature sensors in your home with a Raspberry Pi: Opensource.com
- Run Prometheus at home in a container: Opensource.com
- Raspberry Pi Humidity Sensor using the DHT22: PiMyLifeUp
- Episode 47: Unraveling Python’s Syntax to Its Core With Brett Cannon
- Episode 43: Deep Reinforcement Learning in a Notebook With Jupylet + Gaming and Synthesis