
Alexandre Conrad wrote:
Hello all,
What if str.split could take an empty separator?
'banana'.split('') ['b', 'a', 'n', 'a', 'n', 'a']
I know this can be done with:
list('banana') ['b', 'a', 'n', 'a', 'n', 'a']
I think that, semantically speaking, it would make sens to split where there are no characters (in between them). Right now you can join from an empty string:
''.join(['b', 'a', 'n', 'a', 'n', 'a'])
So why can't we split from an empty string?
This wouldn't introduce any backwards incompatible changes as str.split currently can't have an empty separator:
'banana'.split('') Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: empty separator
I would love to see my banana actually split. :)
Shouldn't it be this:
'banana'.split('') ['', 'b', 'a', 'n', 'a', 'n', 'a', '']
After all, the separator does exist at the start and end of the string:
'banana'.startswith('') True 'banana'.endswith('') True