3 ms·
2) It's cramping my style. My code is art, and restricting how I can structure my code is an affront to my very being. To be fair, there are quite a few common
by Goladus 13y ago
2) It's cramping my style. My code is art, and restricting how I can structure my code is an affront to my very being.
To be fair, there are quite a few common cases where Python's syntax is rather inelegant. The need to break out if-then statements into multiple lines, the need for explicit 'return' statements which also have to go on their own line. These things are only indirectly related to whitespace but do sometimes put a lower bound on expressiveness.
- pyre 13y ago> To be fair, there are quite a few common cases where Python's syntax is rather inelegant Now we're stepping out of the realm of "semantic white space" though. The people I've known to get (literally) red in the face over Python haven't actually used the language and can't do much more than regurgitate stuff like, "but white space!" > The need to break out if-then statements into multiple lines, the need for explicit 'return' statements which also have to go on their own line. Unless I'm missing something those are poor examples of the limits of semantic white space: % python >>> def function(): ... if True: return False ... >>> function() False >>> def function(): ... if False: return True ... else: return False ... >>> function() False Sure you can't do stuff like: >>> def function(): ... True ... >>> function() >>> (That returned `None`) But I don't see how requiring a return statement, or disallowing code like: if var1 = function(): do_something() is a crime against humanity.
- Goladus 13y agoActually after a quick search I realized my problem was ignorance. I did not know about PEP 308 (conditional expressions) which is a workaround for the issue I described. And yes technically it's a statement/expression issue not a whitespace issue, though they're indirectly related.