Ho l'output di un comando in forma tabellare. Sto analizzando questo output da un file di risultati e memorizzandolo in una stringa. Ogni elemento in una riga è separato da uno o più caratteri di spazi bianchi, quindi sto usando espressioni regolari per abbinare 1 o più spazi e dividerlo. Tuttavia, uno spazio viene inserito tra ogni elemento:
>>> 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!!!
C'è un modo migliore per farlo?
Dopo ogni divisione str2viene aggiunto a un elenco.
'str2'
str1.split(). Non c'è bisogno di una regex.