首页 > 解决方案 > 如何在列表中找到与同一列表中先前选择的项目相似的下一个项目?Python

问题描述

我有一个布尔值列表如下

bool_list=[False,False,True,False,False,False,True......nth]

我试图找到下一个等于 True 的项目的索引,而不是上面列表的索引 2 中的项目。但是,当我遍历列表并且我的代码在索引 2 之后遇到 False 时,它​​返回 None,但情况并非如此,因为后面还有其他 True(s)。下面是代码。

我的代码:

p=2
for i in range(p+1,len(bool_list)):
  likely_next_numbers.append(i)  
for j in likely_next_numbers:
    if bool_list[j]==True:
        next_numbers.append(j)
    else:
        next_numbers.append(None)
actual_next_number=next_numbers[0]
print(actual_next_number)  

一个简短的解释是:

我遍历列表并将索引 2 之后的所有其他项目存储在另一个列表中(请原谅我的新手技能)。如果它们匹配 True 我也将结果存储在另一个列表中。然后从那里, True 项目的下一个索引由 last 中的第一个项目给出list(next_numbers[0])

标签: loopsiteration

解决方案


推荐阅读