递归:
1.有一个明确的结束条件。
2.每一次递归问题规模必须比上一次有所减小。
3.递归的效率低下。
1 def ask_road(person_list): 2 if len(person_list) == 0: 3 return "没有人知道路" 4 person = person_list.pop(0) 5 if person == "trony": 6 return "%s 说少年宫在城南" % person 7 print("%s 你知道少年宫在哪嘛?" % person) 8 print("我不知道") 9 res = ask_road(person_list) 10 print("%s 说%s" % (person, res)) 11 return res 12 13 person_road = ["tiger", "hahah", "trony"] 14 ask_road(person_road) 15 >>> 16 tiger 你知道少年宫在哪嘛? 17 我不知道 18 hahah 你知道少年宫在哪嘛? 19 我不知道 20 hahah 说trony 说少年宫在城南 21 tiger 说trony 说少年宫在城南