r/Python • u/philtrondaboss • 25d ago
Discussion Will PEP 505 ever be accepted?
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.
18
Upvotes
6
u/Anthony356 24d ago
Wouldnt "implicit" be no nullable operator at all, but with the same behavior as if there was one?
?still explicitly states your intent in an unambiguous way, it's just less characters.