How can I split by 1 or more occurrences of a delimiter in Python?

Adam Matan picture Adam Matan · Mar 22, 2010 · Viewed 52.4k times · Source

I have a formatted string from a log file, which looks like:

>>> a="test                            result"

That is, the test and the result are split by some spaces - it was probably created using formatted string which gave test some constant spacing.

Simple splitting won't do the trick:

>>> a.split(" ")
['test', '', '', '', ... '', '', '', '', '', '', '', '', '', '', '', 'result']

split(DELIMITER, COUNT) cleared some unnecessary values:

>>> a.split(" ",1)
['test', '                           result']

This helped - but of course, I really need:

['test', 'result']

I can use split() followed by map + strip(), but I wondered if there is a more Pythonic way to do it.

Thanks,

Adam

UPDATE: Such a simple solution! Thank you all.

Answer

Kimvais picture Kimvais · Mar 22, 2010

Just do not give any delimeter?

>>> a="test                            result"
>>> a.split()
['test', 'result']