Hi all! I could not find out whether this has been proposed before (there are too many discussion on join as a sequence method with different semantics). So, i propose a generalized .join method on all sequences with these semantics:
def join(self, seq): T = type(self) result = T() if len(seq): result = T(seq[0]) for item in seq[1:]: result = result + self + T(item) return result This would allow code like the following: [0].join([[5], [42, 5], [1, 2, 3], [23]]) resulting in: [5, 0, 42, 5, 0, 1, 2, 3, 0, 23] You might have noticed that this contains actually two propsals, so if you don't like str.join applying str() on each item in the sequence replace the line result = result + self + T(item) with result = result + self + item My version has been turned down in the past as far as i read, yet, i find the first version more useful in the new context... you can pass a sequence of lists or tuples or really any sequence to the method and it does what you think (at least what i think :). Any comments welcome, David. -- http://mail.python.org/mailman/listinfo/python-list