[Python-3000] Automatically invoking str() in str.join()

Tim Peters tim.peters at gmail.com
Thu Apr 27 19:46:52 CEST 2006


[Barry Warsaw]
>> ...
>> While I hate the way it looks, I never have gotten mixed up about the
>> order of arguments since switching to ''.join(l).

[Tim Hochberg]
> Me too on all counts including the -0.

>> ...
>> But hey, yeah, a join() builtin would be fine if it
>> took the string arg first, so that
>>
>> ''.join(seq) == join('', seq)

> Isn't that the same as str.join?

Well, join(a_string, seq), or join(seq, a_string) (depending on who
you ask) , would be the same as the current a_string.join(seq).  Note
that

    from string import join

already supplies a functional interface (with the separator second). 
That's what was used before strings _had_ methods, and it's still
there.

> In which case why would we need a builtin?

Because people enjoy arguing about the best order for the arguments,
and about the best default separator value, neither of which you _can_
argue about in the method spelling ;-)


More information about the Python-3000 mailing list