给定一个字符串表示一个可以转成未知层数的list例如:123456我们需要取出56所在的那一层数组的数据
可以使用递归来实现。首先判断当前字符串是否为列表,如果是则继续递归处理列表中的每一项,如果不是则直接返回当前值。如果列表中包含目标数据,则返回该数据所在的列表。
具体实现如下:
def find_target_list(data, target):
if isinstance(data, list):
for item in data:
result = find_target_list(item, target)
if result is not None:
return result
elif data == target:
return data
return None
然后调用该函数即可:
data = "[[[1,2],[3,4]],[5,6]]"
target = [5, 6]
import json
data = json.loads(data)
result = find_target_list(data, target)
print(result)
输出:
[5, 6]
原文地址: https://www.cveoy.top/t/topic/brpM 著作权归作者所有。请勿转载和采集!