首页 > 解决方案 > 从索引中获取布尔列表中的真值 - python

问题描述

如何计算此处描述的倒数:在布尔列表中获取 True 值的索引?当我尝试搜索“如何从整数索引中获取布尔列表中的真实值”时,上面的链接总是出现,但它为我提供了布尔列表中真实值的索引,这与我想要的相反...

例如,来自:

t = [4, 5, 7]
count = 16

我想获得:

[False, False, False, False, True, True, False, True, False, False, False, False, False, False, False, False]

正如 Python 所期望的那样,这些值都是 0 索引的。我猜我的问题是重复的,但是每次我尝试记住如何执行此操作时都无法找到我要查找的内容真是太烦人了,我决定问一个新问题,所以我的谷歌搜索希望下次能提出这个帖子。

标签: pythonlist

解决方案


您可以使用列表推导。我建议你t变成一个setfor O(1) 查找:

t_set = set(t)
res = [i in t_set for i in range(count)]

推荐阅读