2

再次认识到这与其他一些关于 SO 的问题相似,但我无法将其转换为我的目的。例如。与下面的片段

import re
a = ['rhubarb','plain custard','jam','vanilla custard','pie','cheesecake']
s = re.compile('custard')

我希望能够得到一份清单

[2,4]

这是两个custard字符串的索引。我认为下面的问题会有所帮助,但我无法弄清楚如何在这里应用它。

Python 相当于 R 中的 which()

4

1 回答 1

10
>>> import re
>>> a = ['rhubarb','plain custard','jam','vanilla custard','pie','cheesecake']
>>> [i for i, s in enumerate(a, start=1) if re.search('custard', s)]
[2, 4]

注意Python 使用 0-index,所以我将start=1参数添加到enumerate. 在实践中,您应该保留start=1默认值start=0

于 2013-05-17T05:59:25.960 回答