send方法和next方法唯一的區別是在執行send方法會首先把上一次掛起的yield語句的返回值通過參數設定,從而實現與生成器方法的交互。
但是需要注意,在一個生成器對象沒有執行next方法之前,由於沒有yield語句被掛起,所以執行send方法會報錯。
因爲當send方法的參數爲None時,它與next方法完全等價。但是注意,雖然這樣的代碼可以接受,但是不規範。所以,在調用send方法之前,還是先調用一次next方法爲好。
python特性(八):生成器對象的send方法 - CSDN博客
Python學習-yield淺析和send()函數 - CSDN博客