General question about Python design goals

Robert Kern robert.kern at
Mon Nov 28 02:30:22 CET 2005

Christoph Zwerschke wrote:
> Sometimes I find myself stumbling over Python issues which have to do 
> with what I perceive as a lack of orthogonality.
> For instance, I just wanted to use the index() method on a tuple which 
> does not work. It only works on lists and strings, for no obvious 
> reason. Why not on all sequence types?
> Or, another example, the index() method has start and end parameters for 
> lists and strings. The count() method also has start and end parameters 
> for strings. But it has no such parameters for lists. Why?
> However when I ask such things I noticed I get answers like: "Is there a 
> use case?" "You can do it some other way so it is not worth bothering."
> Let me ask back: Do I really need to bother and justify it with a use 
> case in a case where the language can be easily made more consistent or 
> orthogonal without breaking anything?

Yes. If it's not going to be used, then there's not much point.
Practicality beats purity, and all that.

However, I will note that if you were to present us with a working patch
with documentation and unittests, then you'll probably get responses
along the lines of "Thank you!", instead.

Robert Kern
robert.kern at

"In the fields of hell where the grass grows high
 Are the graves of dreams allowed to die."
  -- Richard Harter

More information about the Python-list mailing list