短く書くとこうです。
python
1>>> a = [{'id': 'A', 'date': '2020-05-01'},
2... {'id': 'A', 'date': '2020-05-02'},
3... {'id': 'B', 'date': '2020-05-01'}]
4>>>
5>>> d = [dict([['id', i], ['count',len([x for x in a if x['id'] == i])]]) for i in set([y['id'] for y in a])]
6>>> print(d)
7[{'id': 'A', 'count': 2}, {'id': 'B', 'count': 1}]
分かりにくいかもしれないので長いのも作ってみました。
python
1a = [{'id': 'A', 'date': '2020-05-01'},
2 {'id': 'A', 'date': '2020-05-02'},
3 {'id': 'B', 'date': '2020-05-01'}]
4
5id_l = []
6for y in a:
7 id_l.append(y['id'])
8
9print(id_l)
10id_s = set(id_l)
11print(id_s)
12
13d = []
14for i in id_s:
15 contain_i =[]
16 for x in a:
17 if x['id'] == i:
18 contain_i.append(x)
19 count = len(contain_i)
20 d_i = {'id': i, 'count': count}
21 d.append(d_i)
22
23print(d)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/28 13:07