我只需要ageList和nameList这两个列表index相同的对应数据,也就是我想要筛选出{age="20",name="Alice"}和{age="25,name='Bob"}这两数据,其中每个对象中age在ageLIst中的index和name在nameList中的index相等,不要别的数据
时间: 2024-03-08 08:50:34 浏览: 159
好的,根据您的要求,我可以为您提供以下代码示例:
```python
ageList = ["18", "20", "25", "30"]
nameList = ["John", "Alice", "Bob", "Karen"]
dataList = [{"age": "18", "name": "John", "gender": "male"},
{"age": "20", "name": "Alice", "gender": "female"},
{"age": "25", "name": "Bob", "gender": "male"},
{"age": "30", "name": "Karen", "gender": "female"}]
resultList = []
for data in dataList:
ageIndex = ageList.index(data["age"]) if data["age"] in ageList else -1
nameIndex = nameList.index(data["name"]) if data["name"] in nameList else -1
if ageIndex == nameIndex and ageIndex != -1:
result = {"age": data["age"], "name": data["name"]}
resultList.append(result)
print(resultList)
```
在这个示例中,我们首先定义了三个列表,分别存储年龄、姓名和数据。然后,我们遍历数据列表,使用 `index` 函数查找每个对象中年龄和姓名在对应列表中的索引。如果两个索引相等且不为-1,则将这个对象加入到结果列表中。最后,我们输出结果列表,其中包含符合要求的两个对象。
阅读全文