在一个没有循环的列表中找到一个对象的所有索引,可以通过以下步骤实现:
index()
方法来查找第一个匹配对象的索引值,并将其添加到索引列表中。index()
方法的start
参数,从上一步找到的索引值的下一个位置开始继续查找,直到找不到匹配对象为止。以下是一个示例代码:
def find_all_indexes(lst, obj):
indexes = []
start = 0
while True:
try:
index = lst.index(obj, start)
indexes.append(index)
start = index + 1
except ValueError:
break
return indexes
# 示例用法
my_list = [1, 2, 3, 2, 4, 2, 5]
target_obj = 2
result = find_all_indexes(my_list, target_obj)
print(result) # 输出: [1, 3, 5]
这段代码定义了一个名为find_all_indexes()
的函数,它接受一个列表和一个目标对象作为参数,并返回一个包含所有匹配对象索引的列表。在示例中,我们使用my_list
列表和目标对象2
来演示函数的用法,最终输出结果为[1, 3, 5]
,表示目标对象2
在列表中的索引位置。
腾讯云相关产品和产品介绍链接地址:
请注意,以上链接仅为示例,实际使用时应根据具体需求选择适合的腾讯云产品。
Elastic 实战工作坊
Elastic 实战工作坊
Elastic 中国开发者大会
小程序·云开发官方直播课(数据库方向)
云原生正发声
云+社区技术沙龙[第17期]
Elastic 中国开发者大会
云+社区技术沙龙第33期
领取专属 10元无门槛券
手把手带您无忧上云