[Python-Dev] PEP 8 update (original) (raw)
Stefan Behnel stefan_ml at behnel.de
Tue Apr 7 20:34:24 CEST 2015
- Previous message (by thread): [Python-Dev] PEP 8 update
- Next message (by thread): [Python-Dev] PEP 8 update
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Antoine Pitrou schrieb am 07.04.2015 um 14:26:
On Tue, 07 Apr 2015 03:11:30 +0100 Rob Cliffe <rob.cliffe at btinternet.com> wrote:
On 07/04/2015 02:08, Guido van Rossum wrote: I've taken the liberty of adding the following old but good rule to PEP 8 (I was surprised to find it wasn't already there since I've lived by this for ages):
* Be consistent in return statements. Either all return statements in a function should return an expression, or none of them should. If any return statement returns an expression, any return statements where no value is returned should explicitly state this asreturn None, and an explicit return statement should be present at the end of the function (if reachable). Yes: def foo(x): if x >= 0: return math.sqrt(x) else: return None That would seem to be good style and common sense. As a matter of interest, how far away from mainstream am I in preferring, in this particular example (obviously it might be different for more complicated computation), def foo(x): return math.sqrt(x) if x >= 0 else None I agree with you on this.
+1, the ternary operator reads best when there is a "normal" case that can go first and a "special" or "unusual" case that can go last and does not apply under the (given) normal conditions.
Stefan
- Previous message (by thread): [Python-Dev] PEP 8 update
- Next message (by thread): [Python-Dev] PEP 8 update
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]