python - Python:while循环中“else”的目的
问题描述
我的问题是为什么在 while 循环中有一个“else”子句这样的东西。例如,我的代码如下所示:
a = 100
turns = 0
while a > 0:
if func(a, b): #Function returns boolean value
a -= 1
turns += 1
else:
a -= 2
turns += 1
else:
print(turns)
问题是,这与以下语法有何不同?
a = 100
turns = 0
while a > 0:
if func(a, b): #Function returns boolean value
a -= 1
turns += 1
else:
a -= 2
turns += 1
print(turns)
解决方案
不同之处在于它如何处理异常退出循环,例如break
:
while True:
break
else:
print("not printed")
print("printed")
这同样适用于循环体内引发的异常。
推荐阅读
- javascript - 具有共享和单独命令的动态命令处理程序
- websphere - SESN0008E 在登录 ibm/console 的同时登录应用程序时
- laravel - 使用命令行将我的云服务器项目推送到我的 github 存储库
- opencart - 在打开购物车中更改我的域后如何更改重定向链接
- python - Django REST Framework API:无法获取字段的字符串值
- react-native - 反应原生动画无法正常工作
- c++ - 关于在 STL 中解析位集中某些字符的问题
- python - 在 Ubuntu VM 中运行 python 代码时出现 pyodbc.OperationalError
- docker - docker-compose 在全新的 Raspbian 安装中崩溃
- firebase - Streambuilder 空错误。返回 Null 的变量