r/Python • • 7d 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.

103 Upvotes

27 comments sorted by

32

u/Matthew_Summons 7d ago

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

10

u/nicholashairs 6d 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 4d ago

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

5

u/cipri_tom 6d ago

I liked the chronological order

9

u/ranisalt 6d ago

Never thought before: sorting

7

u/Hesirutu 7d ago

Typo:Β  sentinal

8

u/nicholashairs 6d 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 6d ago

> Compact annotion of generic classes and functions

Noticed this one too, but love this!

2

u/nicholashairs 4d ago

Fixed thanks!

6

u/deadeye_82_1 6d ago

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

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

8

u/frou 6d ago

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

6

u/Khavel_dev 6d 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 6d 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.

2

u/cipri_tom 6d ago

Thank you!

2

u/SonixDream 6d ago

Thank you.

2

u/RevRagnarok 6d 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 6d ago

Really useful!

2

u/Deno_Voku 6d ago

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

2

u/k1v1uq 6d ago

Another thanks!

3

u/OpenComplaint524 6d 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 6d ago

TIL "self-documenting f-strings".

Thanks!

2

u/RevRagnarok 6d ago

Great for debug, but then not as useful if you decide to enforce "no f-strings in logging calls" which is generally a good policy... :/

0

u/[deleted] 6d ago

[deleted]

1

u/nicholashairs 4d ago

Fixed thanks!

0

u/[deleted] 6d ago

[removed] β€” view removed comment

1

u/nicholashairs 4d ago

I've added a table of contents instead :)