|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 LEEFEI571 于 2022-11-22 21:47 编辑
请教各位大神:
在<零基础入门学习Python>第4章-<了不起的分支和循环>中,在第35页讲到else语句时,其中for...else语法如下标注:
for 变量 in 可迭代对象:
循环体
else:
条件不成立时执行的内容
问题1:对于for循环语句,出现何种情景时for语句条件不成立?(如对于的while循环语句,则有while True/False)
在后面的p4_14.py例子中:
sum = 0
for in in range(101):
sum += 1
else:
print(sum)
运行结果为何是101,而不是5050?
本帖最后由 jackz007 于 2022-11-23 00:03 编辑
- 1、for 循环只要不是 break 退出,最后都能进 else,当然,如果一开始就不满足循环条件,也是直接进 else,就是说,不能进入 for 循环和循环自然结束,都会进入 else。
- 2、for in in range(101): 在这里保留字 in 在首次循环中被赋值为 0,使 for 语句失去作用,从而直接进入 else
复制代码
for 不能进入:
- for x in range(3 , 1):
- pass
- else :
- print('Bingo!')
复制代码
for 自然结束:
- for x in range(1 , 3):
- pass
- else :
- print('Bingo!')
复制代码
|
|