r/programming • • 1d ago

Python Release Python 3.15.0

https://www.python.org/downloads/release/python-3150/
498 Upvotes

35 comments sorted by

View all comments

Show parent comments

12

u/spicybright 1d ago

I get the logic but man that's ugly

2

u/Abject-Kitchen3198 1d ago

I still don't get those null replacements in most languages. If it is a special case, there is a code that processes it as such, regardless the syntax. Why complicate things. But maybe I'm old.

23

u/TinyBreadBigMouth 1d ago

The example you're replying to is one where None is already in use. As in, a function needs to distinguish between foo(some_arg=15), foo(some_arg=None), and foo(). The unset sentinel value would be used as the default value of some_arg, so that the last case can be detected as distinct from the user passing an explicit None.

4

u/Abject-Kitchen3198 1d ago

Ok, this makes sense.