2011-04-29 80 views
3

可能重複:
Python: sort a part of a list, in place如何排列列表的一部分?

我想實現一個決策樹算法,和我的執行需要通過屬性排序表順序屬性,到位。

下面是它的要點:選擇一個屬性,對它進行排序。現在,共享該屬性的表中的所有條目都可以被認爲是另一個列表,因爲它們之間的置換不會修改該屬性。

那麼,如何才能排序相關的子部分?我是否需要用指定的基數和長度在列表中編寫自己的包裝?

+0

你是什麼意思與部分?你是指從項目位置X到項目位置Y的切片? – 2011-04-29 03:46:03

+0

這似乎不是一個完全重複的「排序的一部分到位」給我。這聽起來更像是他想要一個投影/視圖顯示他的數據的一個子集,過濾並按給定屬性排序。 – samplebias 2011-04-29 04:11:50

回答

6

這是很多地方。它確實需要臨時存儲的排序部分

>>> a=range(20,0,-1) 
>>> a 
[20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1] 
>>> a[10:15]=sorted(a[10:15]) 
>>> a 
[20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 6, 7, 8, 9, 10, 5, 4, 3, 2, 1] 
>>>