2012-10-15 28 views
-5

可能重複:
In Python, how can I naturally sort a list of alphanumeric strings such that alpha characters sort ahead of numeric characters?Python中字符排序

你如何排序包含在python的數字和字符的字符串?

+0

http://www.whathaveyoutried.com –

+2

@ user1742700:在您的問題已關閉後,幾分鐘後請勿提出非常類似的問題。問爲什麼這個問題是關閉的 - 在這種情況下,沒有顯示任何努力,也沒有討論明顯的問題(應該在17之前或之後出現?「A2」與「A17」有什麼關係嗎?) - 並嘗試編寫一個更好的。 – DSM

回答

3
>>> s = '13abc3' 
>>> ''.join(sorted(s, key=lambda x: int(x) if x.isdigit() else x)) 
'133abc' 

這不處理任何自定義排序,如果這是你之後(這是數字,大寫,小寫)。