2013-11-04 47 views
0

我試圖將數據從15020提取到-15431。我能否提取這樣的範圍? x值通常與文件讀取的值不同。從數組中提取特定數值範圍

Range 
x = 15021,14999,14888,...,0,-1000,-14000,-15431,-14000,-2000,0,1000,7000,15890 
    # from here to---------------------------here 

這裏,15021是第一個值。

-15431是最小值。 minimum(x) = -15431

如何從第一個數值中提取數據到最小值?

+0

取決於。如果數組永遠不會改變,那麼你可以使用硬編碼索引的[array slicing](http://stackoverflow.com/questions/509211/pythons-slice-notation),否則你需要搜索數組。 –

+1

你真的*試圖做什麼?你是否可能試圖找到嚴格減少的最長初始序列? –

+0

這是爲了表示文件的內容還是代碼? – YXD

回答

4

假設x是一個列表,從所述第一值中最小值的切片可以被寫入

x[:x.index(min(x)) + 1] 

像這樣:

>>> x = [15021,14999,14888,0,-1000,-14000,-15431,-14000,-2000,0,1000,7000,15890] 
>>> x[:x.index(min(x)) + 1] 
[15021, 14999, 14888, 0, -1000, -14000, -15431]