溫馨提示×

Python序列如何實現(xiàn)元素的分組和聚合

小樊
83
2024-08-17 16:16:37
欄目: 編程語言

要實現(xiàn)元素的分組和聚合,可以使用Python的collections模塊中的defaultdict類。defaultdict類是字典的一個子類,它可以指定一個默認(rèn)值的數(shù)據(jù)結(jié)構(gòu)。

下面是一個示例代碼,演示如何使用defaultdict來實現(xiàn)元素的分組和聚合:

from collections import defaultdict

# 定義一個列表
data = [('apple', 1), ('banana', 2), ('apple', 3), ('banana', 4), ('apple', 5)]

# 使用defaultdict創(chuàng)建一個字典,鍵為元素的名稱,值為該元素的所有值的列表
grouped_data = defaultdict(list)
for name, value in data:
    grouped_data[name].append(value)

# 輸出分組后的結(jié)果
for name, values in grouped_data.items():
    print(f"{name}: {values}")

# 對分組后的數(shù)據(jù)進行聚合
agg_data = {}
for name, values in grouped_data.items():
    agg_data[name] = sum(values)

# 輸出聚合后的結(jié)果
for name, total in agg_data.items():
    print(f"{name}: {total}")

運行上述代碼,會輸出分組后的結(jié)果和聚合后的結(jié)果。在此示例中,我們將數(shù)據(jù)按照名稱分組,并計算每個名稱對應(yīng)的值的總和。

0