[姆咪] Python for-else

楼主: int0x80 (请逐项修改)   2022-09-06 05:35:36
https://docs.python.org/3/tutorial/controlflow.html
#break-and-continue-statements-and-else-clauses-on-loops
python 的 for 可以有 else
如果执行 for 的过程中没有 break 或 return 就会进入 else
像是:
>>> for n in range(2, 10):
... for x in range(2, n):
... if n % x == 0:
... print(n, 'equals', x, '*', n//x)
... break
... else:
... # loop fell through without finding a factor
... print(n, 'is a prime number')
但感觉就跟直觉相反
顺顺的跑完怎么会是 else
或许有些场景能用
但至少我绝对不会去用
感觉就是那种三个月之后回来看就会看不懂的东西
诡异的东西==
作者: h0103661 (路人喵)   2022-09-06 05:37:00
你把他当try-except会比较好理解
作者: JerryChungYC (JerryChung)   2022-09-06 05:59:00
兔了 奇怪的东西
作者: PyTorch (屁眼火炬)   2022-09-06 07:34:00
谢谢宝 学到了
作者: jajeongsalan (插总撒狼)   2022-09-06 07:51:00
这到底:O
作者: surimodo (好吃棉花糖)   2022-09-06 08:12:00
顺利跑完还会进else = = ?
作者: DoraGian (饮冰)   2022-09-06 08:34:00
你可以少设一个变量判断for loop是不是正常跑完啊 不过一般都会建议避免用以减少维护难度
作者: b0920075 (Void)   2022-09-06 08:38:00
跑完循环代表循环判断条件为 false 那就进 else 阿

Links booklink

Contact Us: admin [ a t ] ucptt.com