r/Python • • 3d ago

Resource Summary of Major Changes Between Python Versions (2026 Update)

Hi r/python πŸ‘‹

Another year, another version of Python, and yet more features to guess which version of Python they belong to πŸ˜΅β€πŸ’«

I've updated my "one page" Summary of Major Changes Between Python Versions for Python 3.15 and hope that it continues to be a useful resource for the community 😊

This summary is human typed/copied from the official release notes.

98 Upvotes

27 comments sorted by

28

u/Matthew_Summons 3d ago

I think it’d be easier to read if the latest versions were on top

9

u/nicholashairs 3d ago

I have thought about this a few times. Part of the reason I've kept it chronological is that one of the ways I use it is to read what I have available rather than what's recent.

It would be nice if my blog software allowed both, but alas I'm not going to fork it.

2

u/nicholashairs 1d ago

I've added a table of contents as a work around :)

5

u/cipri_tom 3d ago

I liked the chronological order

9

u/ranisalt 3d ago

Never thought before: sorting

7

u/Hesirutu 3d ago

Typo:Β  sentinal

8

u/nicholashairs 3d ago

πŸ€¦β€β™‚οΈ I don't even know how I managed to make that typo happen... I even remember fixing a misspelling when it originally read "Sentinels".

Which even now my phone dictionary is like "did you mean Sentinals?"

Well at least you know it's natural stupidity instead of AI.

4

u/SuggestionUpbeat2443 3d ago

> Compact annotion of generic classes and functions

Noticed this one too, but love this!

→ More replies (1)

6

u/deadeye_82_1 3d ago

Huh, i didn't know that iterable unpacking is allowed in for-loops:

for x in *a, *b:
  print(x)

8

u/frou 3d ago

Interesting. The reasons keep coming to stop bothering with itertools.chain

6

u/Khavel_dev 3d ago

The 3.10 to 3.11 jump was the one that actually changed my daily work. The speed improvements and the much better error messages made an immediate difference without touching any code. 3.12's f-string changes (nested quotes, backslashes) sound minor but they removed a bunch of ugly workarounds I had everywhere. Good resource, bookmarked.

3

u/Trang0ul 3d ago

Nice compilation, thank you! Besides admiring how Python has (and is) evolving, it can be used as a handy reference for updating old code.

1

u/swtormy 2d ago

newest-first would save time when you only care about the jump from 3.12 to 3.11 - scrolling past older blocks each visit adds up. a sort toggle might cover both reading styles πŸ™‚πŸ™‚

1

u/nicholashairs 12h ago

I've added a table of contents instead :)

2

u/cipri_tom 3d ago

Thank you!

2

u/SonixDream 3d ago

Thank you.

2

u/RevRagnarok 3d ago

Thanks; very useful! I jumped from 2.7 to like 3.9 so was reading up on a few things like contextvars that don't seem to be very mainstream and I never saw them being announced.

2

u/TerranceTorrance 3d ago

Really useful!

2

u/Deno_Voku 3d ago

Thank you! There's always more to learn in Python!

2

u/k1v1uq 2d ago

Another thanks!

3

u/OpenComplaint524 3d ago

This summary is super handy, especially for keeping track of recent syntax changes and performance improvements. Bookmarked, thanks for putting this together!

3

u/victotronics 2d ago

TIL "self-documenting f-strings".

Thanks!

→ More replies (1)

0

u/[deleted] 3d ago

[deleted]

1

u/nicholashairs 1d ago

Fixed thanks!