我想在字符串“ akacja”中找到字母“ a”的所有索引。但是python似乎总是只返回它找到的第一个索引。 有什么办法吗? 感谢您的帮助。
答案 0 :(得分:0)
您可以使用列表推导,因为str.index()
和str.find()
仅返回第一个索引:
s = 'akacja'
indexes = [i for i, c in enumerate(s) if c == 'a']
print(indexes)
# OUTPUT
# [0, 2, 5]
答案 1 :(得分:0)
您可以执行此操作...
indexes = [i for i,c in enumerate('akacja') if c == 'a']
上面的行使用列表理解,它是以下简称的缩写:
indexes = []
for i,c in enumerated('akacja'):
if c == 'a':
indexes.append(i)
您也可以像这样使用正则表达式:
import re
indexes = [f.start() for f in re.finditer('a', 'akacja')]