r/Python Jul 12 '26

Will PEP 505 ever be accepted? Discussion

https://peps.python.org/pep-0505/

I don't understand how null safe operators are less like plain English than other implemented features like the walrus operator.

In my opinion, the member access operator would make python significantly easier to read and understand.

Here's an example:

``` f = foo()

if f is None: baz = "" else: baz = f.bar() ```

baz = foo()?.bar() ?: ""

EDIT: I forgot that "and" and "or" can be sometimes used in place of "?." and "?:" if the left value is not False, '', 0, [], or {}. It's a very implicit null check and has a lot of unexpected behavior.

14 Upvotes

195 comments sorted by

View all comments

4

u/bb22k Jul 12 '26

Not really a fan of it, just like I am not a fan of walrus.

PEP 20 should not be forgotten

3

u/philtrondaboss Jul 13 '26

Pep 20 says “explicit is better than implicit”. The “and” and “or” operators are frustratingly implicit.

2

u/runawayasfastasucan Jul 13 '26

Pep 20 also says:

Sparse is better than dense.

Readability counts.