我需要以最简单的方式选择所有活跃用户
users = [{'id': 1, 'active': False}, {'id': 2, 'active': True}, {'id': 3, 'active': True}, {'id': 4, 'active': True}, {'id': 5, 'active': True}, {'id': 6, 'active': True}]
答案 0 :(得分:2)
你可以用列表理解来做到这一点,
active_users = [user for user in users if user['active']]
答案 1 :(得分:2)
使用列表解析可以正常工作:
users = [user for user in users if user['active']]
答案 2 :(得分:2)
使用filter。它将返回py2.x中的列表和py3.x的生成器
filter(lambda x:x['active'], users)
答案 3 :(得分:0)
active_user = [user['id'] for user in users if user['active']]