我寫了一個函數,它允許我運行一個列表,比較這些值與前輩,並聲明列表在哪一點變得「穩定」一定量條目。 列表中的值表示可能達不到穩定點的信號。 我想出了這個:在列表中過濾出穩定值的更多pythonic方法
def unstableFor(points, maxStable):
count = 0;
prev = points[0]
for i in range(1, len(points)):
if points[i] == prev:
count = count + 1
else:
count = 0
prev = points[i]
if count >= maxStable:
return i
return len(points) - 1
返回的值,然後使用主叫者爲切掉列表的最後一部分。
它的工作,但是,我很不滿意它看起來有多麻煩。你能想到一個更pythonic,可能純粹功能的方式來執行此過濾操作?
在一個側面說明,我想'count'應該從1開始 –
你也可以顯示一個樣品輸入列表和預期輸出 –
必須的條目是總是連續獲得穩定資格? –