Cadeia de divisão baseada em uma expressão regular

Eu tenho a saída de um comando em forma de tabela. Estou analisando essa saída de um arquivo de resultado e armazenando-a em uma string. Cada elemento em uma linha é separado por um ou mais caracteres de espaço em branco, portanto, estou usando expressões regulares para corresponder a um ou mais espaços e dividi-lo. No entanto, um espaço está sendo inserido entre todos os elementos:

>>> str1="a    b     c      d" # spaces are irregular
>>> str1
'a    b     c      d'
>>> str2=re.split("( )+", str1)
>>> str2
['a', ' ', 'b', ' ', 'c', ' ', 'd'] # 1 space element between!!!

Existe uma maneira melhor de fazer isso?

Depois de cada divisãostr2 é anexado a uma lista.

questionAnswers(4)

yourAnswerToTheQuestion