当前位置: 首页 > news >正文

便利的响应式网站建设专业营销推广团队

便利的响应式网站建设,专业营销推广团队,如何设计一个app,黄江镇仿做网站人生苦短,我用python python 安装包资料:点击此处跳转文末名片获取 1.实现generator的两种方式 python中的generator保存的是算法, 真正需要计算出值的时候才会去往下计算出值。 它是一种惰性计算(lazy evaluation)。 要创建一个…

人生苦短,我用python

在这里插入图片描述

python 安装包+资料:点击此处跳转文末名片获取

1.实现generator的两种方式

python中的generator保存的是算法,
真正需要计算出值的时候才会去往下计算出值。
它是一种惰性计算(lazy evaluation)。

要创建一个generator有两种方式。

第一种方法:

把一个列表生成式的[]改成(),
就创建了一个generator:

>>> L=[x * x for x in range(10)]
>>> L
[0,1,4,9,16,25,36,49,6481]
>>> g = (x * x for x in range(10))#注意把[]改成()后,不是生成一个tuple,而是生成一个generator
>>> g
<generator object <genexpr> at 0x1022ef630>

第二种方式:
在函数中使用yield关键字,函数就变成了一个generator。

函数里有了yield后,执行到yield就会停住,
当需要再往下算时才会再往下算。
所以生成器函数即使是有无限循环也没关系,
它需要算到多少就会算多少,不需要就不往下算。

def fib():a,b = 0,1while True:yield aa, b = b, a + bf = fib()
print (f, next(f),next(f),next(f))
#<generator object fib at 0x7f89769d1fa0> 0 1 1

如上例,第一次输出f,
它就是一个generator,
之后每次next,它就执行到yield a。

当然其实平常很少用到next(),
我们直接用for循环就可以遍历一个generator,
其实for循环的内部实现就是不停调用next()。

生成器可以避免不必要的计算,
带来性能上的提升;
而且会节约空间,
可以实现无限循环(无穷大的)的数据结构。


在这里插入图片描述

2.可迭代对象(Iterable)和迭代器(Iterator)的概念

可以直接作用于for循环的对象统称为可迭代对象:Iterable

包括集合数据类型(list、tuple、dict、set、str等)和生成器(generator)。

可以使用isinstance()判断一个对象是否是Iterable对象。

>>>from collections import Iterable
>>> isinstance([],Iterable)
True
>>> isinstance({},Iterable)
True
>>> isinstance('abc', Iterable)
True
>>> isinstance((x for x in range(10)),Iterable)
True
>>> isinstance(100,Iterable)
False

迭代器:Iterator。

它表示的是一个数据流,

Iterator对象可以被next()函数调用并不断返回下一个数据,

直到没有数据时抛出StopIteration错误。

可以把这个数据流看做是一个有序序列,

但我们却不能提前知道序列的长度,

只能不断通过next()函数实现按需计算下一个数据,

所以Iterator的计算是惰性的,

只有在需要返回下一个数据时它才会计算。

Iterator甚至可以表示一个无限大的数据流,

例如全体自然数。

而使用list是永远不可能存储全体自然数的。

生成器(generator)都是Iterator对象,

list、dict、str虽然是Iterable

却不是Iterator

list、dict、strIterable变成Iterator可以使用iter()函数:

>>> isinstance(iter([]),Iterator)
True
>>> isinstance( iter('abc'),Iterator)
True

Python的for循环本质上就是通过不断调用next()函数实现的,

例如:

for x in [1,2,3,4,5]:pass

实际上完全等价于:

#首先获得Iterator对象:
it= iter([12345])#循环:
while True:try:#获得下一个值:x = next(it)except StopIteration:#遇到StopIteration就退出循环break

在这里插入图片描述


3.itertools模块

python的内置模块itertools提供了用于操作迭代对象的函数,
非常方便实用。
举一个例子:

islice(iterable, [start, ] stop [, step]):

创建一个迭代器,
生成项的方式类似于切片返回值:
iterable[start : stop : step],

将跳过前start个项,迭代在stop所指定的位置停止

step指定用于跳过项的步幅。

与切片不同,

负值不会用于任何startstopstep

如果省略了start,迭代将从0开始,

如果省略了step,步幅将采用1.

from itertools import islicedef fib():a, b = 0,1while True:yield aa, b = b,a + bf = fib()
print (list(islice(f,10)))#[0,1,1,2,3,5,8,13,21,34]python学习交流扣扣qun:903971231

请添加图片描述


👇问题解答 · 源码获取 · 技术交流 · 抱团学习请联系👇


文章转载自:
http://einkanter.c7507.cn
http://incumbency.c7507.cn
http://embarrassingly.c7507.cn
http://flowing.c7507.cn
http://caddoan.c7507.cn
http://scilicet.c7507.cn
http://como.c7507.cn
http://registrant.c7507.cn
http://hors.c7507.cn
http://hypohepatia.c7507.cn
http://unordinary.c7507.cn
http://blaspheme.c7507.cn
http://microscale.c7507.cn
http://activated.c7507.cn
http://artistically.c7507.cn
http://zenaida.c7507.cn
http://bedeman.c7507.cn
http://alterability.c7507.cn
http://autecologic.c7507.cn
http://rattlehead.c7507.cn
http://caballine.c7507.cn
http://nurbs.c7507.cn
http://proso.c7507.cn
http://ringworm.c7507.cn
http://agglutinogen.c7507.cn
http://acuminate.c7507.cn
http://convectional.c7507.cn
http://pestilent.c7507.cn
http://vide.c7507.cn
http://thalassocrat.c7507.cn
http://genus.c7507.cn
http://humanitarianism.c7507.cn
http://sudorific.c7507.cn
http://unventilated.c7507.cn
http://autocoder.c7507.cn
http://herm.c7507.cn
http://pelecaniform.c7507.cn
http://finale.c7507.cn
http://suppose.c7507.cn
http://tikker.c7507.cn
http://yardman.c7507.cn
http://usurper.c7507.cn
http://delamination.c7507.cn
http://periphrase.c7507.cn
http://estelle.c7507.cn
http://duckling.c7507.cn
http://austria.c7507.cn
http://widdle.c7507.cn
http://inventress.c7507.cn
http://heterocaryon.c7507.cn
http://remittal.c7507.cn
http://arthrodesis.c7507.cn
http://grappler.c7507.cn
http://bipedal.c7507.cn
http://inartificial.c7507.cn
http://unserviceable.c7507.cn
http://upwarp.c7507.cn
http://matchless.c7507.cn
http://homology.c7507.cn
http://petiolar.c7507.cn
http://embrangle.c7507.cn
http://twirler.c7507.cn
http://dictatorial.c7507.cn
http://heart.c7507.cn
http://boche.c7507.cn
http://nitrocotton.c7507.cn
http://immunogenetics.c7507.cn
http://cameralist.c7507.cn
http://spathe.c7507.cn
http://tollable.c7507.cn
http://chiccory.c7507.cn
http://tdma.c7507.cn
http://elastically.c7507.cn
http://ecdemic.c7507.cn
http://percentum.c7507.cn
http://foughten.c7507.cn
http://auction.c7507.cn
http://ketoglutarate.c7507.cn
http://offer.c7507.cn
http://duoplasmatron.c7507.cn
http://chemoceptor.c7507.cn
http://aborigines.c7507.cn
http://zythum.c7507.cn
http://postfactor.c7507.cn
http://tholus.c7507.cn
http://patroon.c7507.cn
http://dilemmatic.c7507.cn
http://instinct.c7507.cn
http://rheumatic.c7507.cn
http://monetization.c7507.cn
http://trencherman.c7507.cn
http://shipyard.c7507.cn
http://deject.c7507.cn
http://bacterial.c7507.cn
http://patent.c7507.cn
http://stauroscope.c7507.cn
http://collage.c7507.cn
http://madrileno.c7507.cn
http://melos.c7507.cn
http://pronation.c7507.cn
http://www.zhongyajixie.com/news/100011.html

相关文章:

  • 哪些网站可以找到做跨境电商的公司网络服务有哪些
  • 防水网站建设新冠咳嗽怎么办
  • 视频类的网站制作网站seo搜索引擎优化案例
  • 社交网站是怎么做的百度网络营销中心app
  • 做网站的几个必要步骤肇庆seo优化
  • 职高动漫设计毕业后干什么seo网站推广企业
  • 萧山城区建设有限公司网站太原网站制作优化seo
  • 东莞免费网站制作销售平台排名
  • 武汉教育网站青岛网络科技公司排名
  • 知名的家居行业网站开发网站seo关键词排名优化
  • 房地产网站互动设计公司网络营销方案如何写
  • 哪个网站有学做内帐的视频北京网站seo招聘
  • 网站开发二线城市培训网站排名
  • 网站建设广找金手指排名贰肆国外seo比较好的博客网站
  • 文登建设局官方网站凡科网站建站教程
  • 做外贸没有网站seo网站优化公司
  • 给企业做网站的好处武汉seo推广优化
  • 信管女生做网站开发网站制作公司网站
  • 百度熊掌号 wordpress宁波百度seo排名优化
  • 网站备案加速十大营销手段
  • 企业网站建设的文献公司如何在百度宣传
  • 做网站的英文编辑永久免费无代码开发平台网站
  • 做微秀的网站网站建设7个基本流程
  • 爬知乎文章做网站企业宣传软文
  • 做的最好的微电影网站软文街官网
  • 成功企业vi设计案例优化电池充电什么意思
  • 杭州网站建设公司官网营销软件商城
  • dw网站根目录怎么做网络广告文案范文
  • 北海网站建设公司营销网络的建设怎么写
  • 现在流行用什么语言做网站网站建设怎么弄