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

电商网站的在线客服怎么做网页搜索

电商网站的在线客服怎么做,网页搜索,设计师常用的设计软件有哪些,网络及建设公司网站一、问题起源: 想象一下,您掌握了一种魔法,在代码世界里,您可以轻松呼唤出一个整数。然而,事情并不总是看起来那样简单。在Python的奇妙王国中,我遇到了一个有趣的谜题: def tst():try:print(…

一、问题起源:

想象一下,您掌握了一种魔法,在代码世界里,您可以轻松呼唤出一个整数。然而,事情并不总是看起来那样简单。在Python的奇妙王国中,我遇到了一个有趣的谜题:

def tst():try:print('hello world')return 1except:yield 2
print(tst())
type(tst())

表面上,这段代码看起来像是在进行一个简单的问候和返回神秘数字1的仪式。但是,执行后,却揭晓了一个出乎意料的结果:

<generator object tst at 0x00000255F7E039F0>
generator

这个不是预期中的整数!而是一种被称为生成器的强大生物。那么,这是如何发生的呢?

二、魔法解密:为何它是生成器?

一段代码的命运,在Python领域里,是由它出生(定义)的时刻就注定了。就像预言中说的,函数的行为被它的定义方式固定下来,而非仅仅由它实际运行时的动作决定。
Python中的先知们(编译器),在瞥见函数的定义时,会使用他们的预言之眼(分析功能),寻找隐藏于代码深处的yield这个关键词符。发现了yield,哪怕它藏在一条不曾通往的冷僻小径上(逻辑上不可达的代码块),编译器也会宣告:这是一个生成器!
一个神秘的转变:即使您期待着回报(返回值),由于yield的存在,被选中的函数会呈现出生成器的身姿,并赋予它按需迭代、暂停和恢复的能力。
这是因为 Python 的函数定义的语义决定了在编译函数的时候解释器会如何处理它。
在 Python 中,函数如何行为取决于函数的定义而不仅仅是实际运行时的行为。当 Python 的编译器遇到一个函数定义时,它会检查函数体内的语句。如果它发现了 yield 关键字,不管这个 yield 是否在逻辑上可达(即不管它是否在 try 块还是 except 块,或者它是否在某个条件判断很少为真的代码分支中),它都会将这个函数标记为生成器函数。
这意味着一旦函数体中出现 yield,Python 就会创建生成器对象而不是直接执行函数体并返回单一的结果。

三、神秘仪式:为何print未被宣读?

这个生成器仪式的初次召唤(首次调用函数)并不意味着立即展现魔法(执行函数体内的代码),而是颁发一个神秘的标记(生成器对象)。这个标记,好像是一个尚未开启的宝箱,装载着即将展开的奇妙冒险。
迭代这个标记(调用生成器对象的next()方法),就像翻开宝箱的锁,魔法(函数体的代码)才会启动,直到遇到第一个yield魔法符(表达式)为止。
想要领略这段冒险,就请看以下的仪式演示:

def my_generator():print("开始执行")yield 1print("继续执行")yield 2print("执行结束")# 创建生成器对象
gen = my_generator()# 开始迭代生成器
next(gen)
# 输出:"开始执行"
# 在此时, 第一个 yield 1 表达式被执行, 并且函数的状态被暂停next(gen)
# 输出:"继续执行"
# 在此时, 第二个 yield 2 表达式被执行, 并且函数的状态再次被暂停next(gen)
# 输出:"执行结束"
# 函数执行到最后, 并且因为没有更多的 yield 表达式,迭代到此结束,
# 如果试图继续迭代,将抛出 StopIteration 异常。

这是因为生成器函数在首次被调用并返回生成器对象时,并不会执行任何函数体内部的代码,它只是返回一个生成器对象。这个生成器对象可以理解为一个有待执行的函数体。只有当你开始迭代这个生成器(即调用该生成器对象的 next() 方法)时,生成器函数的代码才会开始执行,直到遇到第一个 yield 表达

四、最终揭示

  • 即使很隐秘,yield魔法符号的存在,会让一个函数被赋予生成器的身份。
  • 魔法的初次召唤(生成器函数首次调用)仅仅是交付了一个未来冒险的符记(生成器对象),不触发任何神秘力量(不执行函数体内的代码)。
  • 开启这个冒险(使用next()方法迭代生成器对象)才真正激活了仪式中的法术(函数体内的代码),并把我们引领至第一个法术停顿点(yield)。
http://www.mmbaike.com/news/58264.html

相关文章:

  • 在线做数据图的网站湖北百度推广公司
  • 网站网页怎么做国外免费舆情网站有哪些软件
  • 老司机500视频温州seo排名优化
  • root.txt文件放到您网站的根目录下seo学校培训班
  • b站在哪付费推广汕头网站建设开发
  • 网站建设中 目录怎么做更好网站搭建模板
  • 怎样登入网站后台10条重大新闻
  • 营销型网站建设要郑州seo阿伟
  • 建设干部培训中心网站艾滋病阻断药有哪些
  • 深圳画册设计推荐黑帽seo培训多少钱
  • 成都网络优化网站网络营销的三种方式
  • 白银市做网站网络推广服务外包公司
  • asp.net b2c网站谷歌搜索引擎营销
  • 深圳免费建站高权重友情链接
  • 虚拟主机推荐简阳seo排名优化课程
  • 朱腾鹏个人网站二级分销小程序
  • 北京网络网站建设价格市场调研报告的基本框架
  • wordpress孵化器主题专业seo优化推广
  • 建设部网站1667号公告百度竞价推广的技巧
  • 怎么申请免费网站江门百度seo公司
  • 建个网站用多少钱网站权重怎么查
  • 合肥网站设计制作seo网络营销是什么意思
  • 曰本免费网站上海网络推广招聘
  • 北京网站建设怎么样天印度疫情为何突然消失
  • 网站调用接口怎么做搜外seo视频 网络营销免费视频课程
  • 北京网站设计公司新上海百度移动关键词排名优化
  • 毕设做网站具体步骤搜索引擎和浏览器
  • 网站做接口排线方法2345浏览器主页网址
  • 修改wordpress主体专业网站优化公司
  • 华亮建设集团股份有限公司网站百度网盘登陆