看板 [ Python ]
討論串[教學] 排序問題
共 7 篇文章
首頁
上一頁
1
2
下一頁
尾頁

推噓1(1推 0噓 0→)留言1則,0人參與, 最新作者mantour (朱子)時間15年前 (2009/11/17 02:45), 編輯資訊
0
0
0
內容預覽:
看了z大的推文去查了一下用法. key這個引數是用來指定一個函數f,. 將list的元素i用f(i)的大小來排序. GG=['NM_M_3.3','NM_M_3.13','NM_M_3.11']. 以這個例子來說,我要比的是 int(i.split('.')[1]) 的大小. 因此 key = la
(還有86個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者oaz (台灣獨立建國不必錢嗎?)時間15年前 (2009/11/17 00:17), 編輯資訊
0
0
0
內容預覽:
我在想,你的排序規則會不會是:. 先照小數點後的位數法,由少到多. 而位數若一樣,則由小到大. def your_cmp(x, y):. if len(x)==len(y):. return cmp(x, y). else:. return len(x)-len(y). GG.sort(cmp=yo

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者sbrhsieh (偶爾想擺爛一下)時間15年前 (2009/11/16 22:17), 編輯資訊
0
0
0
內容預覽:
如果你沒有辦法說清楚你要排序的規則,就沒有人能夠幫你。. 你說你想要的順序是 NM_M_3.3','NM_M_3.11', 'NM_M_3.13',但 3.3, 3.11, 3.13. 既不是小->大,也不是大->小,我搞不懂你到底要什麼順序?!. 如果你要的是 . 後面的部分當作數字以升冪排序 3
(還有4個字)

推噓2(2推 0噓 6→)留言8則,0人參與, 最新作者mantour (朱子)時間15年前 (2009/11/16 22:11), 編輯資訊
0
0
0
內容預覽:
sort可以傳入自訂的比較函式進去. 例如你是想要把 . 後面的數字當作整數來排序. 可以這樣. def myCompare(a,b):. if( int(a.split('.')[1]) > int(b.split('.')[1]) ):. return 1. elif(int(a.split('
(還有41個字)

推噓5(5推 0噓 4→)留言9則,0人參與, 最新作者g9678007 (HKE)時間15年前 (2009/11/16 21:27), 編輯資訊
0
0
0
內容預覽:
抱歉,剛剛有點太慌亂。. 小弟是要排序 例如 GG=['NM_M_3.3','NM_M_3.13','NM_M_3.11']. 我想要照數字大小排序. 但是如果利用GG.sort() 會變. ['NM_M_3.11', 'NM_M_3.13', 'NM_M_3.3']. 他變成只排序小數點後面1然後
(還有283個字)
首頁
上一頁
1
2
下一頁
尾頁