我有一個日誌文件,它看起來一個格式化字符串,如:的Python:由1個或多個分隔符的拆分
>>> a="test result"
也就是說,檢測以及檢測結果是由一些空間分割 - 它可能是使用格式化的字符串創建的,它給了test
一些不變的間距。
簡單的拆分不會做的伎倆:
>>> a.split(" ")
['test', '', '', '', ... '', '', '', '', '', '', '', '', '', '', '', 'result']
split(DELIMITER, COUNT)
清除一些不必要的價值觀:
>>> a.split(" ",1)
['test', ' result']
這幫助 - 但當然,我真的需要:
['test', 'result']
我可以使用split()
,然後是map
+ strip()
,但我想知道是否有更多的Pythonic方式來做到這一點。
感謝,
亞當
UPDATE:這樣一個簡單的解決方案!謝謝你們。
至於爲什麼這會起作用:a.split(None)是一種特殊情況,它在Python中意味着「分割一個或多個空白字符」。 re.split()是一般情況下的解決方案。 – 2010-03-22 13:23:22
因爲函數不接受關鍵字參數,所以需要使用str.split(None,maxsplit)。我想知道爲什麼。 – tbrittoborges 2015-05-28 12:53:04
的問題是,如何用分隔符+(一個或多個)分割。你的回答是說任何空格將被視爲分隔符,這是不正確的答案 – Risinek 2016-04-08 10:11:06