游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

测开之函数进阶第1篇递归函数

  1。生成器代码详解defgen():foriinrange(5):jyieldiprint(j)send:与生成器进行交互ggen()print(next(g))print(next(g))
  第一个print(next(g))打印的0,就是生成器生成的元素。第二个print(next(g))打印的1也是生成器生成的元素,None是print(j)打印的j。
  通过生成器获取元素的时候,首先生成器进去的话,当调用生成器获取里面的值,它会从上往下走,走到jyieldi这里,把yield这里的i这个值返回出来,调用完gen()返回一个生成器g。
  通过这个生成器next(g)去拿值的时候,然后它从上往下执行代码,走到jyieldi这里,yield相当于把i,通过yield返回出去。
  从生成器里面返回出来,就生成一个数据。生成这个i,到第一个print(next(g))这里,打印的就是i。
  第二个print(next(g)),再用next()调用生成器的时候,那么这个生成器会从yield之后继续往下执行。
  通过next()去触发生成器的时候,yield之后是没有内容的,j接收的就是空的,所以打印j的时候,打印出来的是个None。2。生成器的三个方法生成器的三个方法:sendclosethrowdefgen():foriinrange(5):jyieldiprint(j)send:与生成器进行交互ggen()print(g。send(100))print(next(g))print(next(g))
  运行后报错:
  生成器的send()方法,它运行的时候会从上一个yield结束的地方来进行运行。
  在这里只创建了gen()这个生成器,这个生成器还没有生成过任何数据,这个时候生成器就暂停在函数最开始的地方defgen():这里。
  这里send(100)这个值进去的话,在这里运行,直接运行foriinrange(5):这个语句,send(100)生成进去的这个值没有地方接收,所以报错了。
  send()必须在调用了一次next()之后才调用。可以和next()一样,去获取生成器里面的内容。2。1next()获取生成器里面的内容:生成器的三个方法:sendclosethrowdefgen():foriinrange(5):jyieldiprint(j)send:与生成器进行交互ggen()print(next(g))print(next(g))print(g。send(100))
  2。2send()在调用了一次next()之后调用,获取生成器里面的内容:生成器的三个方法:sendclosethrowdefgen():foriinrange(5):jyieldiprint(j)send:与生成器进行交互ggen()print(next(g))print(g。send(100))print(next(g))
  yield只能在函数里面用。yield关键字是用在创建生成器的时候,只要函数里面使用了yield关键字,在调用函数的时候,函数不会立马被执行。
  因为这个函数不是简单的函数了,它是个生成器。
  在函数外面,是没办法用yield关键字的。
  2。3close():关闭生成器defgen():foriinrange(5):jyieldiprint(j)yield100send:与生成器进行交互ggen()print(next(g))print(next(g))print(g。send(100))close:关闭生成器g。close()print(next(g))
  2。4throw()方法:在生成器内部主动引发一个异常。参数:1。异常类型。2。异常信息。
  这个方法可以接收2个参数,第一个参数:Exception异常类型。第二个参数:传入异常的信息。
  Exception报错:
  g。throw(Exception,Methodthrowcalled!)
  ValueError:
  g。throw(ValueError,清菡,大事不好,报错了,嘤嘤嘤)
  二、递归函数1。什么是递归函数
  在函数中调用函数自身,我们把这样的函数叫做递归函数。2。递归函数调用原理图
  3。递归边界
  递归边界:退出递归的终止条件。deffunc():print(99999)func()func()
  在外面调用函数,直接陷入一个死循环。在函数内部调用func()这个函数,又到deffunc():这里来执行,然后print(99999),又func()调用。
  不断得自身调用,这样就造成了死循环。
  Pycharm有个检测机制:当它内部检测到这个是个无限递归,没有递归临界点的一个递归函数,那么这个时候,它递归多少次之后,会自动给终止了。
  使用递归函数的时候,一定要注意一个点:就是一定要设置递归的边界。递归的边界就是递归函数的终止条件。
  如果你不设置递归边界,那么你定义的递归函数就是个死循环,一直无限得调用自身。4。通过递归函数实现的任意数的阶乘4。1什么是阶乘?
  1的阶乘
  1hr2的阶乘
  12
  3的阶乘
  123
  4的阶乘
  1234
  递归能实现的,通过循环都能实现。
  Python中递归用得不多,不太建议使用递归,因为递归不太好用,用递归还不如用循环。4。2怎么去算阶乘呢?
  定义个函数,算任意数的阶乘。传1,就算1的阶乘,传10就算10的阶乘。
  可以这样做:
  首先要判断下它传进来的这个参数是不是等于1,如果是等于1的话,就直接给它return返回出去。然后,如果它不等于1的话,就返回returnn(n1)(n2)。
  n传进来是1,那应该返回1;如果传的是2,应该返回returnn(n1)。
  如果在这里用递归函数,调用func(1)。那么这个时候,这个func(1)调用递归函数。
  这个函数返回的是什么?
  调用这段代码:ifn1:return1
  返回的是个1。
  将代码修改成如下:deffun(n):ifn1:return1else:returnnfun(n1)fun(3)
  如果是fun(3),3传进来:deffun(n):ifn1:return1
  肯定是不成立的。
  else后面的代码returnnfun(n1)。
  这里的n是个3,fun(n1)就是fun(2),那么就是3fun(2)。
  这个时候会再次调用自身这个函数:
  这个时候n是什么?
  fun(2)的时候n是个2,就是32fun(1)。fun(1)再执行下,出来的结果是个1。那这里就是个1,就是321。
  等于3的时候,返回的结果就是321。4。3改成fun(4)看看:
  首先4进来,n等于4,fun(n1)就是fun(3)。调用fun(3)就相当于再次调用fun(n),就是43fun(2)。
  再次调用fun(2),再进来,前面returnnfun(n1)这一截得到2,fun(31)得到2,所以最终得到432fun(1)。
  fun(1)调用,结果出来就是个1。就是4321。deffun(n):ifn1:return1else:returnnfun(n1)4321fun(4)5。这个递归函数的递归临界点在哪?ifn1:return1
  当n1的时候就不会调用自身了。当满足某个条件,不再调用自身,那么这个就被称为递归临界点。
  例如改成n1ifn1:return1
  这个时候,这个函数的递归临界点在哪?
  这个递归临界点就是1。deffun(n):ifn1:递归临界点:当达到递归临界点的时候,就不再调用自身函数的条件return1else:returnnfun(n1)4321fun(4)
  任何递归函数,它的原理都是一样的。定义一个递归函数,在递归函数里面它其实就是不断得调用自身,然后设置递归函数的时候,一定不能忘了递归条件。6。斐波那契数列
  后面的数都是等于前2个数相加的结果。
  斐波那契数列的第一个数值是1,第二个数值也是个1,第三个数等于前两个数相加的结果(那就是2),第四个数等于于前两个数相加的结果(那就是3)。
  〔1,1,2,3,5〕
  以此类推。

新款雅阁第二季度上市新车细节调整抢先看近日,从相关信息了解到广汽本田新款雅阁将于今年2季度上市,新车在造型设计上保持与现款车型一致,细节之处有所调整。从整个造型方面来看,新车在轮毂尺寸上由原来的17英寸调整为……中国式岳父背后,藏着一个男人的秘密作者:唐尧来源:鲁豫有约01hr最近热播的综艺节目《婚前21天》,可谓全方位立体式无死角地向大家展示了备婚这个特殊阶段,可能遇到的各种问题。审美差异,有。……天天向上名著音乐会王一博毛不易展开三国大战不管多大年纪,你都一定看过这几部电视剧,它们在播出的时候曾经出现过万人空巷的盛况,它们让中国古代经典文学从书上古板的文字从纸上活了过来,它们就是中国四大名名著的翻拍剧。本期《天……张艺上玉昭令开机担纲女主角古装处女作备受瞩目星关系12月2日讯日前,青年演员张艺上的新剧《玉昭令》在贵州盛大开机,担纲女主角的她与男主角官鸿等一众主创纷纷亮相开机仪式。据悉,该剧根据尾鱼小说《开封志怪》改编,瞬间倾城编剧……小米10s真我gt大师探索版iQOOneo5和一加9R之间,在双十一期间,如果非要在这四款手机中选择一款手机进行购买,小芳我个人是更加倾向于一加9R这款手机会更多一些的。我给到的理由有以下几点,大家不妨参考一下。理由一:从售价方面来看,……林鹏玫瑰行者高燃收网女卧底有勇有谋在线圈粉昨日,由林鹏、郑业成、李子峰主演的卧底题材缉毒剧《玫瑰行者》圆满收官。该剧讲述了林鹏饰演的林蔷以汪倩的身份作为卧底潜入毒窝,九死一生抓捕毒贩的故事。林鹏精准诠释林蔷不羁、痞气但……装修中这些地方不能省,经验之谈在装修新房的时候,每个人都想把自己的家打造成一个最具人性化的港湾,因此对于家里的一切都要做全身心的投入,想要达到更好的效果,那么哪些地方最值得你去花钱呢?这些地方都是我们……星际争霸II阿巴瑟异虫的进化管理大师技能阿巴瑟的主要技能是借助破坏性与恢复性的双重效果来帮助他的单位作战。1、剧毒巢穴放置一个隐藏的爆炸性地雷,对踩中的敌人造成伤害。……家居谱写春的诗篇,让满园春色来彰显春回大地,万物复苏,自然界中的花花草草开始萌动,在不久将会出现满园的春色。家居为了迎合春天的节奏,已经装扮上了,它正用缤纷的色彩来谱写春天的乐章,让满园春色在房间中得以绽放!……我们的婚姻今日开播张晨光搭档佟大为白百合儿女双全《我们的婚姻》今日开播张晨光搭档佟大为白百合儿女双全2月23日,由沈严、刘海波执导,白百何、佟大为、张晨光等领衔主演的电视剧《我们的婚姻》将登陆荧屏。该剧汇集了当下讨论度……白百何佟大为我们的婚姻演夫妻笑闹中携手成长6月7日,由企鹅影视、瞳盟影视出品,沈严、刘海波执导,吴红梅担任总制片人,白百何、佟大为、蒋欣领衔主演,高叶、王骁、是安主演,曹曦文、张晨光、郑合惠子等特别出演的都市情感剧《我……小舍得圆满收官小助理蒲诗韵引关注近日,由宋佳、蒋欣、佟大为、李佳航主演,张国立特别出演的家庭教育题材电视剧《小舍得》已经圆满收官,这部剧不仅有实力派演员同台飙戏,剧中的配角也十分亮眼。扮演南俪(宋佳饰)助理路……
专访vivo副总裁周围软件创新将在内核上做文章记者林腾编辑vivo希望软件成为其更核心的竞争力。2020年11月,vivo发布操作系统OriginOS,并在最近发布了升级版OriginOSOcean。短短……监控摄像头芯片领域绝对龙头华为海思一般来说谈起华为大家会想到手机做的好,谈到海思,懂手机配置的人会知道海思是华为旗下做芯片(soc)的;在手机soc领域海思已经通过麒麟980证明了与高通已经几乎没有差距了。……云文件的保护(二)前篇文章使用ecryptfs来进行文件保护,但一个问题在于,ecryptfs是linux内核里面的,在其他平台并不好用,比如windows上就没有客户端了,这样也着实不太方便了……小米12u什么时候发布啊,mix2s感觉要坚持不住了,好焦急再坚持坚持〔大笑〕估计过完年也不好说,咱俩同款,我前几天实在忍不住了,买了mix4,本来想买11u,但是受不了挖孔和留海,没办法只能向4妥协了如果满足不了现在的需要……宇宙年龄只有140多亿年,宽度却有920亿光年,这是不是一个啊呀,这个题目提醒我了一下,我家的小狗快1岁了,居然有40厘米长了,这不是明显是个悖论吗言归正传,这个题目的内容里有几个含义:首先,光年是个距离概念,而年是个时间概念,也……新风系统哪个品牌好?中国市场买新风看五点,第一过滤系统是否强大,要有一定效果的独立初效过滤,高效pm2。5的过滤等级至少要H13级别的。是否有独立的活性炭净化格,而且活性炭的量必须多,可以吸……万代mb系列为什么这么贵,贵在哪里了?MB系列作为万代近年力推的新成品系列,因机设不同,骨架部分合金,为材质的可动成品系列。MB系列可以说是万代公司凭借多年的玩具与模型制作经验,而兼顾比例、造型、可动、细节的最佳平……功放机HDMi同轴与莲花等不同输入接口对音质影响大吗?hdmi是音视频混合输出。一般在电脑上尤其是显卡上用的比较多。本质是是数字音频。功放上的hdmi接口一般会由功放内置的解码器把音视频解码,然后分配到视频输出或者音频前置放大,然……新经济风云录拥抱未来!新规之下,网络直播将走向何方?时下互联网直播蔚然成风,自2021年以来,作为网络直播最重要的形式之一电商直播头部主播纷纷陷入税收风波以来,市场就在猜测直播行业相关规范政策何时到来,直播行业也因此一度陷入政策……几百块的热水器和几千块的热水器有什么区别?在实际维修中,我接触到各种各样的热水器。有的廉价多用于出租房;有的相对高档自用。下面我来说一下几百块的热水器和几千块的热水器到底区别在哪?首先,说一下燃气热水器。一……关于联想的问题我想说两句最近司马先生质疑联想涉嫌国有资产流失要求联想给个解释导致舆论沸沸扬扬,争论不休,联想方面没有给出正面回应,反而从美女秘书到大咖集体无理无据的攻击司马先生,再到最后的人身恐吓我看……联想事件目前越闹越大,争端已经蔓延到人身攻击,为什么会这样?侵吞国有资产,为富不仁!挖国家墙角!欺骗供货商割股民韭菜!欠巨资且分钱中饱私囊!很多人骂它人身攻击是必然的,各大媒体没出来说话也许某些人不让说还不敢说!再等等让子弹飞一会!……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网