Python - 按一个列表中的唯一值和第二个列表中的特定字符串进行过滤

时间:2017-11-02 16:39:14

标签: python list list-comprehension

我有两个列表

ids = [1,2,2,2,5]
names = ['yes', 'no','yes','yes','no']

我想设置(id)并过滤名称' no'维持职位

所以我最终得到了

[1,2,5]
['yes','no','no']

我只需要根据不同的ID来计算有多少'否

某种列表理解可能吗?拉链?

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

from collections import defaultdict
id = [1,2,2,2,5]
name = ['yes', 'no','yes','yes','no']
d = defaultdict(list)
for a, b in zip(id, name):
   d[a].append(b)

final_data = {a:b[0] for a, b in d.items()}
print(final_data.values().count("no"))

输出:

2