2016-11-12 57 views
0

我有一個要整理的整數字符串列表。格式是這樣的:使用Python刪除列表中的字符串之間的空格

l= ['17', '23', '35', '79', .....] 

我需要將每個數字字符串轉換爲一個整數,以便我可以對其數值進行排序。我曾嘗試以下,

l.sort(key=int) 

不過,我

無效字面INT()基數爲10: ''

我認爲這是由於空格中在琴絃之間。那是對的嗎?如果是這樣,我該如何解決它?

+2

你能舉出一個導致此問題的示例輸入嗎? – shuttle87

+0

另請參閱http://stackoverflow.com/questions/2508861/python-convert-a-string-to-an-integer – cdarke

+1

奇怪的是,我嘗試你的代碼它沒有工作,空間不應該是一個問題,檢查你的輸入列表它是否包含非數字或空的東西 – Skycc

回答

1

從列表中刪除空白字符串:

l = filter(str.strip, l) 

然後你就可以排序爲你。

+0

@cdarke:它直接解決了OP的問題。我想你只是沒有想過如何。 –

+1

@cdarke它不是...空白字符串提高OP的異常,這個答案過濾掉那些...... –

+1

但是,如果你打算使用過濾器@John,我會避免使用lambda並直接使用str.strip。 –