2 回答

TA貢獻1864條經(jīng)驗 獲得超2個贊
continue
不影響else:
條款。else
如果循環(huán)正常終止,即如果 a StopIteration
(隱式)由迭代器引發(fā),則運行該子句。
該continue
語句對特定的迭代沒有任何作用,但是它不會阻止迭代器被耗盡。

TA貢獻1877條經(jīng)驗 獲得超6個贊
不,else子句執(zhí)行不受continue.
唯一可以防止else語句(在 for 循環(huán)之后)被觸發(fā)的是break語句(或者您的代碼在完成循環(huán)return之前退出或引發(fā)異常)。for
for i in range(5):
continue
else:
print("else triggered")
將打印else triggered。
請參閱文檔:
循環(huán)語句可能有一個else子句;它在循環(huán)因列表用盡而終止(with for)或條件變?yōu)?false 時(with while)執(zhí)行,但不是在循環(huán)被break語句終止時執(zhí)行
[...]
當與循環(huán)一起使用時,子句與語句的子句比與語句的子句有else更多的共同點:語句的子句在沒有異常發(fā)生時運行,而循環(huán)的子句在沒有異常時運行。elsetryiftryelseelsebreak
僅break提到防止else子句運行,continue不是。
添加回答
舉報