2013-06-20 89 views
1

我想分割我正在玩的數據文件中的行。 This原本是別人的代碼,只是試圖「修復它」。他們在分號上分裂,但我意識到他們實際上也需要分裂多餘的空白。我已經單獨列出了第28行中的表達式。我嘗試了其他用戶的一些建議,但是當我使用正則表達式命令時,我得到一個invalid literal for int()警告。這很令人困惑,因爲如果我不使用正則表達式,它會起作用。有什麼建議麼?謝謝。由字符或空格python分割行

編輯:編輯完整的代碼鏈接。

回答

5

不,.split沒有參數是唯一的形式分裂任何空格。

使用這樣的正則表達式:

re.split(r'[\s;]+', text) 
+0

我想你的建議'回溯(最近通話最後一個)後獲得此爲錯誤: 文件「VizierConvert.py」 28行,在 s = re.split(r'[\ s;] +',t) 文件「/usr/lib/python2.7/re.py」,第167行,分割爲 return _compile(pattern,flags)。分裂(字符串,maxsplit) TypeError:期望的字符串或緩衝區' – Matt

+0

@Matt你應該分裂'線'而不是't' – jamylak

+0

呃,現在我得到這.... .... File「VizierConvert.py 「 (int(model [i + 25] [6])== 3): ValueError:int()與基數爲10的無效文字:'8.51e-03' ' – Matt