我有具有属性 id 的对象列表,我想找到具有特定 id 的对象的索引。我写了这样的东西:
index = -1
for i in range(len(my_list)):
if my_list[i].id == 'specific_id'
index = i
break
但是看起来不太好。有没有更好的选择?
最佳答案
当您需要 for
循环中的值和索引时,请使用 enumerate
:
for index, item in enumerate(my_list):
if item.id == 'specific_id':
break
else:
index = -1
或者,作为生成器表达式:
index = next((i for i, item in enumerate(my_list) if item.id == 'specific_id'), -1)
关于python - 在 Python 中按属性获取对象列表中的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19162285/