Planet Python RSS
210 subscribers
18.4K links
Unofficial Planet Python RSS feed from planetpython.org. Maintained by @cfinnberg
Download Telegram
Python Software Foundation: Announcing the 2026 Python Packaging Council Election Results!

Link: https://pyfound.blogspot.com/2026/09/announcing-2026-python-packaging.html

The inaugural Python Packaging Council (PPC) election has concluded. With 17 candidates and plenty of lively AMA discussions on DPO, we are pleased to see the level of engagement with this first PPC e
Python Software Foundation: Announcing the 2026 PSF Board Election Results!

Link: https://pyfound.blogspot.com/2026/09/announcing-2026-psf-board-election.html

The 2026 election for the PSF Board created an opportunity for conversations about the PSF's work to serve the global Python community. We appreciate community members' perspectives, passion, and enga
Bob Belderbos: Why Rust makes you import a trait to use its methods

Link: https://belderbos.dev/blog/rust-import-traits-to-use-methods/

An interesting challenge for a new student came up in our Rust cohort: they opened a file and wanted to read its contents from disk, but the compiler refused to let them call read_to_string.

This is
Graham Dumpleton: Writing a workshop for JupyterLab

Link: https://grahamdumpleton.me/posts/2026/09/writing-a-workshop-for-jupyterlab/

Yesterday's post introduced jupyterlab-workshop and showed one page of a workshop. This one writes a whole workshop from an empty directory. It is small enough to fit in a post, but it has everything
Bob Belderbos: Protocol or ABC for a pluggable interface?

Link: https://belderbos.dev/blog/protocol-vs-abc-provider-interface/

I was designing the provider boundary with a student for a CLI tool that talks to two different image-generation backends.
Same inputs from the user, two different SDKs underneath. We were figuring ou
ListenData: AutoGPT : Everything You Need To Know

Link: https://www.listendata.com/2023/04/autogpt-explained-everything-you-need.html

In this post we have covered AutoGPT in detail. By end of this tutorial, you will not only understand how it works but also will be able to run it on your system. Auto-GPT has gained a significant amo
Django Weblog: Proposed change to DSF voting membership

Link: https://www.djangoproject.com/weblog/2026/sep/18/proposed-change-to-dsf-voting-membership/

We're proposing a new voting membership status to help us track active members. If you've voted in a Board election in the last two years, you're active, and you count toward quorum. If you haven't, y
LernerPython blog, from Reuven Lerner: Python callables: Any object that defines __call__

Link: https://lernerpython.com/2026/09/17/python-callables-any-object-that-defines-call/


What is a “callable” in Python? Typically, a function or class.
But really, it’s anything with __call__ defined:
class MyClass:
def __call__(self):
return 'Hi!'
m = MyClass()
m() # 'Hi!'
LernerPython blog, from Reuven Lerner: np.nan in Pandas: Why missing values break comparisons

Link: https://lernerpython.com/2026/09/18/np-nan-in-pandas-why-missing-values-break-comparisons/


Missing data in Python Pandas? We use nan (“not a number”), which comes from NumPy.
np.nan is a float, but not a normal one:
np.nan + 10 # nan
np.nan * 12345 # nan
sum([10, 20, np.na
Bob Belderbos: Ship Your First Python App: a Free Course on the Local Dev Workflow

Link: https://belderbos.dev/blog/free-python-foundations-course-local-dev-workflow/

I keep hearing this a lot: the Python syntax I picked up in an afternoon, but shipping a real project meant learning ten more things. There is a stark difference between writing some code in Python vs
PyPy: PyPy v78.0.0 release

Link: https://www.pypy.org/posts/2026/09/pypy-v800-release.html

PyPy v8.0.0: release of python 2.7, 3.11,3.12 beta released 2026-09-19
The PyPy team is proud to release version 8.0.0 of PyPy after the previous
release on May 26, 2026. This is a major new version,
LernerPython blog, from Reuven Lerner: Get Python help, one on one: my coaching sessions

Link: https://lernerpython.com/2026/09/20/get-python-help-one-on-one-my-coaching-sessions/

Some of the most satisfying work I do happens one on one. You arrive with a real problem from your real job — code that will not behave, an architecture you are unsure about, a Git situation that has
LernerPython blog, from Reuven Lerner: Get Python help, one on one: my coaching sessions

Link: https://lernerpython.com/2026/09/20/python-coaching-one-on-one/

Some of the most satisfying work I do happens one on one. You arrive with a real problem from your real job — code that will not behave, an architecture you are unsure about, a Git situation that has
Andre Roberge: Breaking a four year hiatus to talk about the export keyword (PEPs 842 and 843)

Link: https://aroberge.blogspot.com/2026/09/breaking-four-year-hiatus-to-talk-about.html

I started writing this blog in 2004 and, every year I published at least one post until 2022. So four years of not writing about Python ... and, actually, four years of (essentially) not writing any c
Django Weblog: New Technical Governance Approved

Link: https://www.djangoproject.com/weblog/2026/sep/22/new-technical-governance-approved/

Both the Steering Council and DSF Board have approved DEP 19, which implements our new technical governance. Thank you to everyone who read the document and participated in the process! This was the e
Talk Python to Me: #564: EVE Online Departs for Python 3

Link: https://talkpython.fm/episodes/show/564/eve-online-departs-for-python-3

Every ship in EVE Online eventually undocks and leaves the station. This time, it's the whole game. EVE has run on Python 2 since it launched in 2003, all 2.4 million lines of it, on a custom Stackles
PyCoder’s Weekly: Issue #753: frozendict, pytest Plugins, re.prefixmatch(), and More (2026-09-22)

Link: https://pycoders.com/issues/753

#753 – SEPTEMBER 22, 2026 View in Browser » Python 3.15 Preview: frozendict Preview Python 3.15’s frozendict: build immutable mappings you can hash, cache, and share across threads, and learn wh
Python Bytes: #497 Faster than light profiling

Link: https://pythonbytes.fm/episodes/show/497/faster-than-light-profiling

Topics covered in this episode:

Tachyon: A sampling profiler ships in Python 3.15's stdlib
Python Workers are now generally available on Cloudflare
Flet 1.0 - build cross-platform apps in Python
mari
LernerPython blog, from Reuven Lerner: NaN in Pandas: Why you need np.nan, not pd.NaN

Link: https://lernerpython.com/2026/09/20/nan-in-pandas-why-you-need-np-nan-not-pd-nan/


Missing data? NumPy calls it nan. Python Pandas displays it as NaN.
But: Pandas doesn’t define pd.nan or pd.NaN. NumPy removed np.NaN in version 2.0.
So you have to refer to np.nan from within Panda
LernerPython blog, from Reuven Lerner: Pandas nullable integers: Keeping ints with Int64 and pd.NA

Link: https://lernerpython.com/2026/09/22/pandas-nullable-integers-keeping-ints-with-int64-and-pd-na/


You have a Python Pandas series with ints + NaN. You don’t want float forced on you.
Solution: Use the “extension” type Int64 (note Initial Caps) and pd.NA:
s = Series([10, pd.NA, 30], dtype='Int64')
Python GUIs: Dynamically Adding Rows of Widgets in PyQt6 — How to use QGridLayout to add multiple widgets per row at runtime

Link: https://www.pythonguis.com/faq/creating-dynamic-textboxes/


I have a GUI where I dynamically add a QLineEdit for each image a user selects. That part works. But now I want to extend it so that each image gets a row of three text boxes — one for the filename,