我正在尝试遍历这种树形结构,想要获取所有的“标题”。请注意,这个结构可能会越来越大,也就是说每个标题在将来可能会有更多的子类别。有什么想法吗?
我正在尝试做到以下几点:
请注意,我没有使用递归,因为我不清楚何时停止调用,并且我不想使调用栈饱和。
我正在尝试做到以下几点:
def continue_searching(item):
for i in len(item):
if categories[i]["subcategories"]:
continue_searching(i["subcategories"])
print(i["subcategories"])
def give_titles(categories):
for i in len(categories):
if categories[i]["subcategories"]:
continue_searching(i["subcategories"])
print(i['title'])
categories = [
{
"title": "Food",
"subcategories": [
{"title": "Bread"},
{
"title": "Meat",
"subcategories": [
{"title": "Pork",
"subcategories": [
{"title": "White Pork"},
{"title": "Red Pork"}
]
},
{"title": "Beef"},
],
},
{"title": "Cheese"},
],
},
{"title": "Drinks"},
]
give_titles(categories)
期望输出:
Food
-Bread
-Meat
--Pork
---White Pork
---Red Pork
--Beef
-Cheese
Drinks
请注意,我没有使用递归,因为我不清楚何时停止调用,并且我不想使调用栈饱和。