我知道如何刪除列表中的元素列表的元素時,它沒有一定的規模,如:刪除不具有相同的長度,因爲大多數的條目
x = [[1,2,3],[1,2,3],[1,2,3],[1,2,3],[1,2,3],[1,2],[1,2,3],[1,2,3],[1,2,3,4]]
y = [s for s in x if len(s) == len(x[0])]
凡x
是原始列表,並且y
是新列表。正如你在第一個中看到的那樣,有一個條目不像其他條目那麼長,而另一條則比其他條目長。
我想刪除一個元素,每次它不具有與列表中大多數元素相同的長度。只要列表中的第一個元素具有與大多數元素相同的長度,展示方法就可以工作。
所以問題是如何獲得最常見的元素長度?沒有循環遍歷整個長度。平均值不起作用,因爲平均值不代表大部分長度,但平均元素長度(例如長度3,3,3,30將給出〜10的平均值,而長度的主要值爲3)。
我認爲,中位數會做,但我不太清楚,如果中位數也代表了一個數組中最常見的值。然而@Moses Koledoye的解決方案工作正常 – Kev1n91