Interesting. I agree that this is inconsistent and confusing (and I'm quite curious how the implementation ended up this way).
But I have literally NEVER been bitten by this -- perhaps it's because I WAS bitten by it way back when, and then started the habit of ignoring empty strings before I split() -- I have a lot of code like: line = line.strip() if line: # do the splitting, or whatever .... But as Eric says -- it is way too late to change this now -- at least the default behavior. -CHB On Tue, Oct 20, 2020 at 9:08 AM Eric V. Smith <e...@trueblade.com> wrote: > On 10/20/2020 11:52 AM, Antal Gábor wrote: > > Hey there, > > > > This is my first letter here, I'll try my best to explain the problem. > > First of all, I ran into this "problem" several times. I find > > str.split() a bit confusing. First of all, this is a corner case, but > > can happen like every day. > > > > print("".split()) # returns [] > > print("".split(" ")) # returns [''] > > print("".split("\t")) # returns [''] > > print("".split("\n")) # returns [''] > > print("".splitlines()) # returns [] > > > > So using split with or without a separator matters a lot, even when we > > use the same whitespace character split() uses. I think it is quite > > annoying. My idea is to return a list with an empty string in all > > cases mentioned above. > > > With probably millions (at least!) of uses of str.split in real code, > there's no way we can change this behavior. > > You might be able to argue for an additional parameter to control this, > but I personally think the chances of confusion are too high. What I > usually do is write a wrapper for str.split if I don't like how it's > behaving. > > Eric > > _______________________________________________ > Python-ideas mailing list -- python-ideas@python.org > To unsubscribe send an email to python-ideas-le...@python.org > https://mail.python.org/mailman3/lists/python-ideas.python.org/ > Message archived at > https://mail.python.org/archives/list/python-ideas@python.org/message/FEHVZG4CSIIC5GF3U73TZZLUTBVS6N4R/ > Code of Conduct: http://python.org/psf/codeofconduct/ > -- Christopher Barker, PhD Python Language Consulting - Teaching - Scientific Software Development - Desktop GUI and Web Development - wxPython, numpy, scipy, Cython
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/R5HWZQQDWH3FQPPMPHF6QQ7UDO453OV6/ Code of Conduct: http://python.org/psf/codeofconduct/