零基础学python小甲鱼电子书pdf零基础学python小甲鱼课后作业
下载地址 https://share.weiyun.com/2XRnoj1t
资料目录 小甲鱼零基础学python视频全套96集 小甲鱼零基础入门学习Python pdf 小甲鱼零基础学python第二版 pdf 小甲鱼零基础入门学习Python全套课件+源码 鱼c小甲鱼零基础学python全套课后题及答案
举例
最后要郑重说一下“普通程序员用迭代,天才程序员用递归”这句话是不无道理的。但是你不要理解错了,不是说会使用递归,把所有能迭代的东西用递归来代替就是“天才程序员”了,恰好相反,如果你真的这么做的话,那你就是“乌龟程序员”啦。为什么这么说呢?不要忘了,递归的实现可以是函数自个儿调用自个儿,每次函数的调用都需要进行压栈、弹栈、保存和恢复寄存器的栈操作,所以在这上边是非常消耗时间和空间的。 另外,如果递归一旦忘记了返回,或者错误地设置了返回条件,那么执行这样的递归代码就会变成一个无底洞:只进不出!所以在写递归代码的时候,千万要记住口诀:递归递归,归去来兮! 因此,结合以上两点致命缺陷,很多初学者经常就会在论坛上讨论递归存在的必要性,他们认为递归完全没必要,用循环就可以实现。其实这就跟讨论C语言好还是Python 优秀一样,是没有必要的。因为一样东西既然能够持续存在,那必然有它存在的道理。递归用在妙处,自然代码简洁、精练,所以说“天才程序员使用递归”。
6.6.3这帮小兔崽子 按理来说,今天的话题跟兔子不拉边,不过嘛,大家也知道小甲鱼的风格了,天南地北,总有相关联的东西可以拉过来扯淡。本节就用递归来实现斐波那契(Fibonacci ))数列吧。 斐波那契数列的发明者,是意大利数学家列昂纳多·斐波那契(Leonardo Fibonacci )。这老头说来跟小甲鱼也有一定的渊源,就是老爱拿动物交配说事儿,不同的是小甲鱼注重过程和细节,而这老头更关心结果,下边就有一个他讲过的故事:如果说兔子在出生两个月后,就有繁殖能力,在拥有繁殖能力之后,这对兔子每个月能生出一对小兔子来。假设所有兔子都不会死去,能够一直干下去,那么一年之后可以繁殖多少对兔子呢? 我们都知道兔子繁殖能力是惊人的,如图6-6所示。
第五课动动手答案: 0. 针对视频中小甲鱼提到的小漏洞,再次改进我们的小游戏:当用户输入错误类型的时候,及时提醒用户重新输入,防止程序崩溃。 需要注意的地方在代码中已经注释! 1. import random 2. times = 3 3. secret = random.randint(1,10) 4. print('------------------我爱鱼C工作室------------------') 5. guess = 0 6. print("不妨猜一下小甲鱼现在心里想的是哪个数字:", end=" ") 7. while (guess != secret) and (times > 0): 8. temp = input() 9. while not temp.isdigit(): 10. temp = input("抱歉,您的输入有误,请输入一个整数:") 11. guess = int(temp) 12. times = times - 1 # 用户每输入一次,可用机会就-1 13. if guess == secret: 14. print("我草,你是小甲鱼心里的蛔虫吗?!") 15. print("哼,猜中了也没有奖励!") 16. else: 17. if guess > secret: 18. print("哥,大了大了~~~") 19. else: 20. print("嘿,小了,小了~~~") 21. if times > 0: 22. print("再试一次吧:", end=" ") 23. else: 24. print("机会用光咯T_T") 25. print("游戏结束,不玩啦^_^")
1. 写一个程序,判断给定年份是否为闰年。 1. temp = input('请输入一个年份:') 2. while not temp.isdigit(): 3. temp = input("抱歉,您的输入有误,请输入一个整数:") 4. 5. year = int(temp) 6. if year/400 == int(year/400): 7. print(temp + ' 是闰年!') 8. else: 9. if (year/4 == int(year/4)) and (year/100 != int(year/100)): 10. print(temp + ' 是闰年!') 11. else: 12. print(temp + ' 不是闰年!')
|