递归问路函数

Posted 未来的技术

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归问路函数相关的知识,希望对你有一定的参考价值。

 递归就是调用自己,return才能结束循环,print没用,

def clc(n):
    print(n)
    if int(n/2)==0:
        return n
    res=clc(int(n/2))
    return res
clc(10)
import time
person_list = [cat, dog, fish,jerry] #1
def ask_way(person_list):
    if len(person_list) == 0:  # 判断是否为空,也可以理解为没人的时候
        return i dont know
    person = person_list.pop(0)  # 一次弹出一个人来纹路
    if person == jerry:  # 如果问到了列表中最后的人
        return %s say turn aroud the road % person#指路
    print(hi,%s ,where the road % person)#列表循环
    print(%s say i dont know,you can ask %s % (person, person_list))#某个人不知道你可以问问剩下的人
    time.sleep(1)#1秒
    return ask_way(person_list)#问题规模减小

res=ask_way(person_list)#最开始纹路的人 2
print(res)

 

以上是关于递归问路函数的主要内容,如果未能解决你的问题,请参考以下文章

Python的递归练习:问路

递归问路

递归问路

2018-6-6-Python全栈开发day15-part2-递归

python 函数递归 day15

迭代器协议和for循环工作机制