【发布时间】:2018-10-08 15:42:15
【问题描述】:
如何在python 字符串列表中提取子字符串的索引(最好以快速方式处理长列表)?
例如mylist = ['abc', 'day', 'ghi']和字符'a',我想返回[0, 1, -1]。
【问题讨论】:
如何在python 字符串列表中提取子字符串的索引(最好以快速方式处理长列表)?
例如mylist = ['abc', 'day', 'ghi']和字符'a',我想返回[0, 1, -1]。
【问题讨论】:
您可以将str.find 与列表理解一起使用:
L = ['abc', 'day', 'ghi']
res = [i.find('a') for i in L]
# [0, 1, -1]
如文档中所述:
返回字符串中找到子字符串
sub的最低索引 在切片s[start:end]内。可选参数start和end是 解释为切片符号。如果找不到sub,则返回-1。
【讨论】:
或带索引
l = ['abc','day','ghi']
[e.index('a') if 'a' in l else -1 for e in l]
【讨论】: