python - else之后继续功能
问题描述
在此先感谢您的帮助!
我正在构建一个简单的程序;这个想法是让它定期检查变量是否已更改,如果有,则执行某些操作,如果没有,则再次检查。用例:在浏览器中显示从用户当前 URL 派生的图表;如果 URL 未更改,则不执行任何操作,如果更改,则重新绘制图形。
我遇到了一个问题;我希望我的函数在满足条件时继续运行,如果不满足条件,请执行其他操作,然后继续运行。
这是我的while函数代码;我的 IDE 和阅读告诉我这里不允许“继续”:还有其他方法可以让我的功能保持活动状态吗?相反,如果这是实现我想要做的事情的愚蠢方式,请告诉我!
while new_value != previous_value:
#wait
#do something
#put contents of new_value into previous_value
#update new_value from external source (e.g. URL from browser, which may or not be have changed)
else:
#wait
#do nothing
#put contents of new_value into previous_value
#update new_value from external source
continue
解决方案
这里的问题是'else'语句,当像这样使用时,一旦你的循环已经被破坏,就会被执行。因此,没有什么可以“继续”,并且您的 IDE 正在标记语法错误。
这是一个有点晦涩难懂的 Python 结构,但它(及其背后的原因)在 15 分 53 秒时得到了很好的解释。
你可能想要做的是:
while True:
if new_value != previous_value:
# Do one thing
else:
# Do a different thing
# You will need to specify an end condition,
# or it will continue looping indefinitely.
if exit_conditon_met:
break
推荐阅读
- mysql - Mysql:如何在字符串列表中查找列值
- bash - 如何使用 Cadaver 上传名称中带有空格的文件?
- php - 在 PHP POST 表单中传递一个巨大的数组,以便基于这个数组创建一个 CSV 文件
- java - 如何修复 couchbase “获取对 rev hotel_4396 的错误响应 - > 错误的用户”
- rest - 尝试使用 Symfony 4 / Apli Platform Token not found 401 构建身份验证
- java - Java NIO 套接字阻塞通道已连接/打开
- python-3.x - Selenium 错误:缺少 1 个必需的位置参数:'url'
- php - 从 PHP 中的数组中删除空的 stdclass 对象
- java - 如何使用扩展视图而不是全部视图绘制棋盘
- java - 按钮状态 - 按下并再次按下