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

在国际网站上做贸易怎么发货工业风 网站建设

在国际网站上做贸易怎么发货,工业风 网站建设,如何自己免费创建网站,wordpress前端修改影响升级在我们使用Python编译过程中#xff0c;yield 关键字用于定义生成器函数#xff0c;它的作用是将函数变成一个生成器#xff0c;可以迭代产生值。yield 的行为在不同的情况下会有不同的效果和用途。 1、问题背景 在 Python 中#xff0c;“yield” 是一种生成器#xff0…在我们使用Python编译过程中yield 关键字用于定义生成器函数它的作用是将函数变成一个生成器可以迭代产生值。yield 的行为在不同的情况下会有不同的效果和用途。 1、问题背景 在 Python 中“yield” 是一种生成器generator的实现方式。生成器是一种特殊类型的迭代器iterator它可以在运行时动态产生值。然而在某些情况下使用生成器可能会遇到令人困惑的行为。 比如下面有一个函数 x()它产生一个生成器该生成器每次调用 next() 方法时都会递减全局变量 a 的值并产生一个 yield 语句: a 5def x():global aif a 3:raise Exception(Stop)a a - 1yield a现在让我们在 Python shell 中调用这个函数并打印出生成的值 print(x().next()) 4print(x().next()) 3到目前为止一切正常。但是如果我们把生成器函数的调用结果赋值给一个变量然后使用这个变量来产生值就会出现不同的行为 a 5b x()print(b.next()) 4b.next() StopIteration这次在第二次调用 b.next() 时它没有产生值而是引发了一个 StopIteration 异常。这是为什么呢 2、解决方案 要理解这种行为我们需要了解生成器的工作原理。 当我们调用一个生成器函数时它并不会立即执行函数体而是返回一个生成器对象generator object。这个生成器对象包含了函数体中的代码但它不会在调用时执行。当我们使用 next() 方法来产生值时生成器对象才会开始执行函数体。 在第一次调用 x() 时我们创建了一个新的生成器对象。这个对象在执行函数体时遇到了 a 3 这个条件并引发了一个异常。然后我们在 Python shell 中打印出了这个异常。 在第二次调用 x() 时我们又创建了一个新的生成器对象。这个对象在执行函数体时仍然遇到了 a 3 这个条件并引发了异常。 但是当我们把生成器函数的调用结果赋值给变量 b 时情况发生了变化。这使得我们可以多次调用 b.next() 来产生值。当我们第一次调用 b.next() 时生成器对象从上次中断的地方继续执行并产生了值 4。 然而当我们第二次调用 b.next() 时生成器对象已经执行到了函数体的末尾没有更多的值可以产生了。因此它引发了一个 StopIteration 异常。 为了更好地理解这种行为我们可以使用一个 for 循环来遍历生成器 def looping(stop):for i in looping(stop):yield i looping(3).next() 0looping(3).next() 0注意每次我们创建一个新的生成器循环都会从头开始。然而如果我们存储一个生成器的引用那么循环会继续从上次中断的地方继续执行 stored looping(3)stored.next() 0stored.next() 1stored.next() 2stored.next() Traceback (most recent call last):File stdin, line 1, in module StopIteration在循环期间每次执行 yield 语句时代码都会暂停调用 .next() 继续从上一时间中断的地方继续执行函数。 StopIteration 异常是完全正常的这是生成器传达它们已经完成的方式。一个 for 循环寻找这个异常来结束循环 for i in looping(3): ... print(i) ...0 1 2通过上述总结我们得知yield 在不同的上下文中有不同的行为但都涉及到生成器的创建或者协程的定义。所以说最终选择哪种模式还得更加自身情况来选择。
http://www.dnsts.com.cn/news/25129.html

相关文章:

  • 建设网站需要的软硬件wordpress 付费
  • 开互联网公司网站是自己建吗钓鱼网站在线生成
  • 织梦猫html5高端网络服务机构网站模板西安seo外包价格
  • 网站备案地址深圳建网建网站
  • 深圳网站建设代理大连市城乡建设厅网站
  • 公司网站域名备案流程做暧暧的网站
  • 帮人做logo网站广告设计与制作是干什么的
  • 国内大型网站制作wordpress添加按钮
  • 怎么给网站做后台简洁网站模板下载
  • 上海网站开发团队厦门35网站建设公司
  • 邯郸企业建网站现在电商做的设计用的什么网站
  • 长春高铁站怎么把网站模板上传到自己的网站
  • 网站右边上下浮动代码曼联对利物浦新闻
  • 个人做网站流程吐鲁番seo快速排名
  • 免费做效果图的网站有哪些顺德网站优化
  • 山东网站备案时间wordpress二维码用户登录
  • 做传销网站的桂林象鼻山景区简介
  • 做it软件的网站公司部门新年祝福语简短
  • 网站浏览历史能恢复吗怎么设置的青岛企业建设网站公司
  • 下载的网站模板怎么用辽宁网站seo
  • 加强公司门户网站建设电脑做apk的网站h5
  • 网站策划ps网站托管服务怎么收费
  • 猎头网站怎么做网站如何做服务器授权
  • 备案的域名做电影网站wordpress如何发表新文章
  • 企业网站建设的困难和问题电商平台怎么样才能做起来
  • 怎么样通过做网站赚钱网站品牌栏目建设
  • 图库 网站 源码东莞互联网
  • 备案过的网站换空间潍坊网站建设潍坊
  • 网站建设提供资料表网站建站平台公司
  • 海关网站建设方案wordpress 登录用户信息