我想检索与特定值匹配的元素的索引 例如我有以下格式的数组:
data = [
{
type: <string>,
texts: [
text: <String>,
locations: [
{
x: <int>,
y: <int>
}
]
]
}
]
我正在使用下面的方法查找类型是否存在:
matching_data = next((item for item in data if item["type"] == "fruit"), None)
如果类型存在,我将使用以下方法检查特定的“文本”是否存在:
if macthing_data == None:
<do some thing>
else:
type_idx = 0
for idx, item in matching_data:
if item["type"] == "fruit":
type_idx = idx
break
然后编写另一个生成器(与上面类似)以检查是否存在匹配的“文本”。
检查匹配值是否存在时,是否还有任何方法可以检索匹配的idx
?
我将使用索引来更新数组中的值。
抱歉,如果该职位的可读性不及社会期望。
谢谢
答案 0 :(得分:1)
使用enumerate
。
def example_generator():
yield 'a'
yield 'b'
yield 'c'
for index, value in enumerate(example_generator()):
print(index, value)
输出
0 a
1 b
2 c