DictList2 — это лёгкая Python-библиотека, расширяющая стандартный список для удобной работы с массивами словарей.
- 📦
unique()— исключает дубликаты по всем полям; - 🔢
sort()— сортировка по одному или нескольким ключам; - 🎯
distinct()— уникальные значения по выбранным полям; - 🔍
filter()— фильтрация по условиям; - 🔄
gen_filter()— группировка с возможностью сортировки; - 🔗
join()/left_join()— объединения списков по ключу; - 🧮
group_by()— группировка с подсчётом суммы; - 📊
aggregate()— универсальная агрегация:sum,count,avg,min,max.
pip install dictlist2from dictlist2 import DictList2
data = DictList2([
{"project": "A", "user": "Anna", "hours": 2},
{"project": "A", "user": "Ivan", "hours": 3},
{"project": "B", "user": "Anna", "hours": 4},
{"project": "A", "user": "Anna", "hours": 1},
])
# Группировка с агрегацией
result = data.aggregate(
group_columns="project",
aggregations={"hours": ["sum", "avg"], "user": "count"}
)
for row in result:
print(row)- Обработка данных из баз данных или API.
- Построение отчётов без использования Pandas.
- Быстрая фильтрация, группировка и агрегация словарей.
- Python 3.10+
- Без внешних зависимостей
MIT License