gpt4 book ai didi

python - 使用 groupby 过滤器后应用神社过滤器

转载 作者:行者123 更新时间:2023-11-28 17:38:22 25 4
gpt4 key购买 nike

我有一个字典列表,我想按某个属性分组,然后按另一个属性求和。对于变量“foo”,这将是这样的:

foo | groupby('a') | sum(attribute='b')

这显然行不通,因为在 groupby 之后,我有一个元组列表。有什么方法可以解压元组然后重新打包,这样我就可以维护 groupby 完成的工作,但处理第二个元组值?

最佳答案

您可以使用 map() filter将总和应用于每个组,前提是您先提取组列表:

foo | groupby('a') | map(attribute='list') | map('sum', attribute='b')

那是因为 map()将第一个参数作为另一个过滤器,其余参数传递给该过滤器,将该过滤器应用于 groupby() 的每个元素。 .

这确实意味着您最终得到的是总和列表,而不是组。

您不能将求和应用于组并保留 .grouper属性到位。为此,唯一的解决方案是使用实际的循环:

{% for group in foo | groupby('a') %}
{{ group.grouper }}: {{ group.list | sum(attribute='b') }}
{% endfor %}

将输出 a 的每个不同值后跟一个冒号和属性之和 b对于那个群体。

关于python - 使用 groupby 过滤器后应用神社过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28006299/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com