Python是一種非常流行的編程語言,它非常適合處理和操作集合型數據,其中數組是其中一個非常重要的數據結構。在實際的開發中,我們經常需要對一個數組進行分組,而Python提供了強大的數組分組功能。
# 示例代碼 from itertools import groupby def group_array(arr): res = [] for k, g in groupby(sorted(arr), key=lambda x:x//10): l = list(g) if len(l) >1: res.append(l) else: res.append(l[0]) return res arr = [11, 12, 15, 16, 19, 21, 22, 23, 24, 25, 31, 33, 36, 38, 41, 43] print(group_array(arr)) # 輸出結果 # [[11, 12], 15, 16, 19, [21, 22, 23, 24, 25], [31], [33], [36], [38], [41], [43]]
在上述代碼中,我們使用了Python標準庫中的itertools模塊,通過groupby函數可以方便的對數組進行分組操作。將數組按照10的倍數進行劃分,對每個分組進行判斷,判斷分組長度是否大于1,大于1則表示該分組有多個元素,需要將這個分組加入到結果數組之中。如果分組長度為1,則直接將該元素加入到結果數組之中。最終返回結果數組。
通過這種方法,我們可以方便的對數組進行分組,而且能得到我們想要的結果。可以應用到很多實際的場景中,例如統計分數段的學生人數、將列表按照字母進行分組等等。