首页 > 解决方案 > 区分两个数组的Pythonic方式

问题描述

我调用两个 API 端点并收到以下响应:

applications = [{'id': '1', 'name': 'app1'}, {'id': '2', 'name': 'app2'}]
types = [{'id': '3', 'name': 'app1'}, {'id': '4', 'name': 'app1'}]

我正在寻找以下输出:

app1 has 2 types.
app2 has 0 types.

我可以通过嵌套的 for 循环来实现这一点,但是实现这一点的最 Pythonic 方式是什么?

标签: python

解决方案


types = [app['name'] for app in types]
apps = {app['name']:types.count(app['name']) for app in applications}

应用程序字典将为您提供应用程序类型计数。这是你要找的吗?


推荐阅读