所以我有以下列表:
found = ['ITERATION 0', 'string', 'ITERATION 1', 'string', 'ITERATION 2', 'string']
我正在尝试,我不能为我的生活找到StackOverflow或Youtube的任何答案,以提取每个ITERATION
的索引。
所以在我的例子中,reslt将是[0, 2, 4]
。
我可以使用found.index(r'ITERATION 0')
查找具体事件;但这无法帮助我找到2
和4
。
答案 0 :(得分:2)
您可以将enumerate
与列表理解结合使用:
>>> found = ['ITERATION 0', 'string', 'ITERATION 1', 'string', 'ITERATION 2', 'string']
>>> [i for i, s in enumerate(found) if s.startswith('ITERATION')]
[0, 2, 4]
在上面enumerate
返回(index, string)
个元组。对于每个元组列表,理解检查字符串是否以'ITERATION'
开头,并且是否包含结果的索引。