Python产量
它通常用于将常规 Python 函数转换为生成器。生成器是 Python 中的一个特殊函数,它将生成器对象返回给调用者。由于它存储局部变量状态,因此可以控制内存分配的开销。
例子:
# Python3 code to demonstrate yield keyword
# Use of yield
def printresult(String) :
for i in String:
if i == "e":
yield i
# initializing string
String = "GeeksforGeeks"
ans = 0
print ("The number of 'e' in word is : ", end = "" )
String = String.strip()
for j in printresult(String):
ans = ans + 1
print (ans)
输出:
The number of 'e' in word is : 4
Python返回
它通常用于执行结束以及“returns”将结果发送给调用者语句。它可以返回所有类型的值,当语句“return”没有表达式时,它返回None。
例子:
# A Python program to show return statement
class Test:
def __init__(self):
self.str = "GeeksForGeeks"
self.x = "Shubham Singh"
# This function returns an object of Test
def fun():
return Test()
# Driver code to test above method
t = fun()
print(t.str)
print(t.x)
输出:
GeeksForGeeks Shubham Singh
Python 产量和返回之间的区别
序列号 | YIELD | RETURN |
---|---|---|
1 | Yield 通常用于将常规 Python 函数转换为生成器。 | Return 一般用于执行结束以及“returns”将结果返回给调用者语句。 |
2 | 它取代函数的返返回暂停其执行而不破坏局部变量。 | 它退出函数并将值返回给调用者。 |
3 | 当生成器将中间结果返回给调用者时使用它。 | 当函数准备好发送值时使用它。 |
4 | 在yield语句之后编写的代码将在下一个函数调用中执行。 | while,return语句之后编写的代码将不会执行。 |
5 | 它可以运行多次。 | 它只运行一次。 |
6 | Yield 语句函数从函数暂停的最后一个状态开始执行。 | 每个函数调用都从头开始运行该函数。 |
相关用法
- Python String format()用法及代码示例
- Python abs()用法及代码示例
- Python any()用法及代码示例
- Python all()用法及代码示例
- Python ascii()用法及代码示例
- Python bin()用法及代码示例
- Python bool()用法及代码示例
- Python bytearray()用法及代码示例
- Python callable()用法及代码示例
- Python bytes()用法及代码示例
- Python chr()用法及代码示例
- Python compile()用法及代码示例
- Python classmethod()用法及代码示例
- Python complex()用法及代码示例
- Python delattr()用法及代码示例
- Python dict()用法及代码示例
- Python dir()用法及代码示例
- Python divmod()用法及代码示例
- Python enumerate()用法及代码示例
- Python staticmethod()用法及代码示例
- Python filter()用法及代码示例
- Python eval()用法及代码示例
- Python float()用法及代码示例
- Python format()用法及代码示例
- Python frozenset()用法及代码示例
注:本文由纯净天空筛选整理自SHUBHAMSINGH10大神的英文原创作品 Difference between Yield and Return in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。