蟒蛇产量(python yield)和python返回(python return)的区别

yield语句用于在Python中定义生成器。所以,在我们深入研究收益率到底是做什么的之前,我们必须先了解生成器的概念。生成器在Python中扮演着重要的角色,如果您深入研究Python编程,那么很可能您已经使用过Python生成器。生成器用于在Python中创建迭代器,但方法不同。...

yield语句用于在Python中定义生成器。所以,在我们深入研究收益率到底是做什么的之前,我们必须先了解生成器的概念。生成器在Python中扮演着重要的角色,如果您深入研究Python编程,那么很可能您已经使用过Python生成器。生成器用于在Python中创建迭代器,但方法不同。

Python生成器是生成一系列结果的函数,可以动态暂停和恢复。生成器首先在Python2.2中作为可选特性添加,并在Python2.3中成为标准。尽管它们足够强大,但在Python2.5中生成器功能得到了显著增强。

当在Python2.2中添加生成器时,它引入了一个新的关键字“yield”以实现向后兼容性,为此我们需要从\u future\u模块导入生成器以使用它们。在pythonversion2.3中,当生成器成为标准时,这一点发生了变化,不再需要了。

yield语句暂停函数的执行并向调用者发送一个值,同时保存状态并稍后恢复,这意味着在获得返回值之后,整个生成器本身仍然可以恢复。return语句结束函数的执行并将值发送回调用者。没有它,函数将不返回任何内容。让我们仔细研究一下在Python中何时使用yield和何时使用return,以便更好地理解两者之间的区别。

 

蟒蛇产量(python yield)和python返回(python return)的区别

什么是蟒蛇产量(python yield)?

yield语句在Python生成器中用于替换函数的返回,以便在不破坏局部变量的情况下将值发送回调用方。为了更好地理解yield语句在Python编程中扮演的角色,您必须了解生成器是什么。

生成器函数是按定义生成的,就像常规函数一样,但包含一个“yield”语句。这以关键字“yield”开始,它指定要返回给调用者的生成器对象。生成器是Python中的一个特殊函数,它将生成器对象而不是数据值返回给调用者。yield关键字具有停止函数执行、保存状态和稍后恢复的独特功能。

 

蟒蛇产量(python yield)和python返回(python return)的区别

什么是python返回(python return)?

return语句与yield语句不同,它从函数中退出,并将值返回给调用方。函数将值返回给它们的调用者,而那些在本质上更具过程性的函数根本不显式返回任何东西。虽然一个函数可以有多个return语句,但对于函数的任何给定调用,只能调用其中一个语句。

通常,return语句出现在函数块的最末端,以返回执行该函数中包含的所有语句的最终结果。但是,它也可能出现在函数块的前面,以停止该块中所有后续语句的执行。这会立即在调用者处恢复程序的执行。如果未指定值,则Python中的等效返回对象类型为“None”。

 

收益率与回报率之差

  1. 与Python屈服和回报相关的基础知识
    • yield语句在Python生成器中用于替换函数的返回,以便在不破坏局部变量的情况下将值发送回调用方。生成器是Python中的一个特殊函数,它将生成器对象而不是数据值返回给调用者。
    • return语句与yield语句不同,它从函数中退出,并将值返回给调用方。通常,return语句出现在函数块的最末端,以返回执行该函数中包含的所有语句的最终结果。所有函数都返回一个值,如果没有指定值,则返回“None”。
  1. Python中的生成器与函数产生和返回
    • yield语句与Python生成器一起显式使用。从语法上讲,生成器是带有yield语句的函数。虽然一个函数可以有多个return语句,但对于函数的任何给定调用,只能调用其中一个语句。
    • 与只返回一次的函数不同,生成器可以停止执行并生成中间结果。每个生成器都定义为一个函数,但是在函数块中使用yield关键字来代替return关键字,以指示返回值只是临时的,即使在获得返回值之后,也可以恢复整个生成器。
  1. Python Yield和Return的执行
    • return语句终止函数的执行,并向其调用者发回一个值。函数将值返回给它们的调用者,而那些在本质上更具过程性的函数根本不显式返回任何东西。它基本上是从函数中退出并销毁其中的所有局部值。
    • 另一方面,yield语句替换函数的返回值以暂停其执行,并将值发送回调用方而不破坏局部变量。但是,与返回函数不同的是,yield从停止的位置恢复函数的执行。

python收益率与收益率:比较图

蟒蛇产量(python yield)和python返回(python return)的区别

 

总结 - 蟒蛇产量(of python yield) vs. 返回(return)

从语法上讲,yield是一个关键字,它可以像return关键字一样使用,只是return语句终止函数的执行并将值发送回调用方。return语句的功能是获取输入并向调用者返回一些东西。与return不同,yield语句显式用于定义生成器,替换函数的返回值以暂停其执行,保持局部变量不变,而return语句则销毁函数中的所有局部变量。

 

  • 发表于 2021-06-26 01:00
  • 阅读 ( 152 )
  • 分类:IT

你可能感兴趣的文章

水蟒(anaconda)和python编程(python programming)的区别

...应用程序。它在初学者和开发人员中都很流行。 什么是蟒蛇与python编程的关系(the relati***hip between anaconda and python programming)? 蟒蛇是用蟒蛇写的。 水蟒(anaconda)和python编程(python programming)的区别 Anaconda是Python和R编程语言的分布...

  • 发布于 2020-10-18 11:25
  • 阅读 ( 326 )

蟒蛇2(python 2)和三(3)的区别

...高级编程语言。它是一个面向对象和面向过程的多范式。蟒蛇是圭多·范罗森发现的。它是一种易于学习的编程语言,可用于各种应用程序。Python有两个主要版本,分别是python2和python3。本文将讨论这两个版本之间的差异。Python2...

  • 发布于 2020-10-20 01:55
  • 阅读 ( 349 )

学习python?下面是如何操作字符串

使用Python可以通过多种方式操纵字符串。Python提供了各种函数、操作符和方法,可以用来操作字符串。您可以分割一个字符串,连接两个或多个字符串,在字符串中**变量,等等。 ...

  • 发布于 2021-03-11 10:21
  • 阅读 ( 335 )

用这些免费的在线交互式shell在浏览器中试用python

... 1任何地方的蟒蛇 ...

  • 发布于 2021-03-15 00:25
  • 阅读 ( 372 )

揭开这个免费电子书现代蟒蛇!

面向对象编程(OOP)是一种流行的设计范式,其中数据和行为被封装成可以一起操作的方式。 ...

  • 发布于 2021-03-20 06:10
  • 阅读 ( 230 )

python成为未来编程语言的6个原因

... 1蟒蛇很流行 ...

  • 发布于 2021-03-23 12:03
  • 阅读 ( 245 )

了解python lambda函数的初学者指南

Python中的lambda是最有用、最重要、最有趣的特性之一。不幸的是,他们也很容易误解和出错。 ...

  • 发布于 2021-03-24 12:14
  • 阅读 ( 248 )

关于python编程最常见的问题

... 为什么学蟒蛇? ...

  • 发布于 2021-03-25 18:32
  • 阅读 ( 440 )

什么是编程中的函数?

...多种。确切的语法将取决于您正在使用的语言。我们将在Python、JavaScript和C++中演示示例,以演示一系列编程语法。 ...

  • 发布于 2021-03-29 16:35
  • 阅读 ( 264 )

python(python)和水蟒(anaconda)的区别

蟒蛇vs蟒蛇 蟒蛇和水蟒无疑是世界上最伟大的蛇。有些人认为蟒蛇和蟒蛇是一回事。然而,水蟒和蟒蛇属于两个不同的蛇科。 蟒蛇属于博阿家族,在南美和亚马逊河流域都有发现。蟒蛇属于蟒蛇科。它在南亚、东南亚和撒哈拉...

  • 发布于 2021-06-22 13:44
  • 阅读 ( 254 )
cxuk350327
cxuk350327

0 篇文章

相关推荐