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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。