Coding style

Bruno Desthuilliers onurb at xiludom.gro
Tue Jul 18 05:30:45 EDT 2006


Lawrence D'Oliveiro wrote:
> In message <Q8OdnfqZn6udnSHZnZ2dnUVZ_vOdnZ2d at nmt.edu>, Bob Greschke wrote:
> 
> 
>>I'd go even one step further.  Turn it into English (or your favorite
>>non-computer language):
>>
>>1. While list, pop.
>>
>>2. While the length of the list is greater than 0, pop.
>>
>>Which one makes more sense?  Guess which one I like.  CPU cycles be
>>damned.
>>:)
> 
> 
> One of my rules is, always program like the language actually has a Boolean
> type, even if it doesn't.

Python has a boolean type.

> That means, never assume that arbitrary values
> can be interpreted as true or false,

There's nothing to assume, and nothing arbitrary in it. It's all clearly
defined in whole letters in the language references.

> always put in an explicit comparison
> if necessary so it's obvious the expression is a Boolean.

The fact that the expression is used in the context of a if statement is
clearly enough to denote a boolean expression. Explicitly testing
against a boolean is uselessly redundant - and doesn't change anything,
since it's always a boolean expression. FWIW, getting rid of theses
"explicit" redundant tests was one of the first things I learned about
programming.


-- 
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in 'onurb at xiludom.gro'.split('@')])"



More information about the Python-list mailing list