python死循环_怎么避免Python程序出现死循环(无限循环)?
要知道,每个循环结构(while 或 for)都必须有停止运行的途径,这样才不会没完没了地执行下去。
例如,下面的循环从1数到5:
x = 1
while x <= 5:
print(x)
x += 1
运行结果为:
1
2
3
4
5
但如果像下面这样不小心遗漏了代码行x += 1,那么这个循环将没完没了地运行:
#这个循环将没完没了地运行
x = 1
while x <= 5:
print(x)
在这里,x 的初始值为 1,但根本不会变,因此条件测试x <= 5始终为 True,导致 while 循环没完没了地打印 1,运行结果如下所示:
1
1
1
1
--snip--
每个程序员都会偶尔因为不小心而编写出无限(死)循环,在循环的退出条件比较微妙时尤其如此。
如果程序陷入无限循环,可按组合键Ctrl+C,也可关闭显示程序输出的终端窗口,如果前 2 种方式都无效,比如有些编辑器(如 Sublime Text)内嵌了输出窗口,这可能导致难以结束无限循环,因此不得不关闭编辑器来结束无限循环。
读者可能会问,怎样才能有效避免编写出包含无限循环的程序呢?
要避免编写无限(死)循环,应务必对每个 while 循环(或 for 循环)进行测试,确保它按预期那样结束。如果希望程序在用户输入特定值时结束,可运行程序并输入这样的值,如果此时程序没有结束,则说明该循环结构会无限循环,应检查程序处理这个值的方式。
总之,解决无限(死)循环的方法只有一个,即确认循环结构中至少有一个位置能让循环条件为 False 或让 break 语句得以执行。
python死循环_怎么避免Python程序出现死循环(无限循环)?相关推荐
- python书籍_最好的Python书籍,让您像专业程序员一样编程
Python是一种值得学习的语言.学习Python不仅会激发你用最简单的方式完成高度复杂的任务,还会打破传统编程范型的藩篱.Python是能够改变你的编程方式进而改变你看问题的角度的一种语言. Pyt ...
- 微信 小程序 python 渲染_干货 | 微信小程序自动化测试最佳实践(附 Python 源码)...
本文为霍格沃兹测试学院测试大咖公开课<微信小程序自动化测试>图文整理精华版,进阶学习文末加群! 随着微信小程序的功能和生态日益完善,很多公司的产品业务形态逐渐从 App 延升到微信小程序. ...
- 有趣的超短python代码_有趣的python精短程序
python可以简单优美,也很有趣,下面是收集的例子: 1.一句话开始一个http的文件服务器: $ python -m SimpleHTTPServer Serving HTTP on 0.0.0. ...
- 微信小程序python自动化测试_干货 | 微信小程序自动化测试最佳实践(附 Python 源码)...
本文为霍格沃兹测试学院测试大咖公开课<微信小程序自动化测试>图文整理精华版. 随着微信小程序的功能和生态日益完善,很多公司的产品业务形态逐渐从 App 延升到微信小程序.微信公众号等.小程 ...
- 学习python课程_想学习Python吗? 这是我们的免费4小时互动课程
学习python课程 Python is a popular, versatile and easy-to-learn language. It's the go-to language for AI ...
- 2018年python薪资_最好的Python:2017和2018年至今我最喜欢的文章集
2018年python薪资 我打算发布此收藏集 (My intention with publishing this collection) Last year I only used Medium ...
- python股市_如何使用python和破折号创建仪表板来主导股市
python股市 始终关注大局 (Keep Your Eyes on the Big Picture) I've been fascinated with the stock market since ...
- 少儿编程python教材_少儿编程|Python环境安装
一.为什么要学Python? 小学 山东,浙江,北京地区小学已将Python内容纳入教材 高中 浙江省已将信息技术教材编程语言替换为Python 大学 计算机二级考试加入"Python 语言 ...
- python竞赛_浅谈Python在信息学竞赛中的运用及Python的基本用法
浅谈Python在信息学竞赛中的运用及Python的基本用法 前言 众所周知,Python是一种非常实用的语言.但是由于其运算时的低效和解释型编译,在信息学竞赛中并不用于完成算法程序.但正如LRJ在& ...
- qt designer python显示_请问在python怎么使用qtdesigner设计的ui?
OS X EI Capitan Python 3.5.1 PyQt 5.5.1 PyCharm 5.0.1 前言 在PyQt5系列教程的第一篇h50218157,我们已经搭建好了开发环境,今天,我们就 ...
最新文章
- 使用Jittor实现Conditional GAN
- 企业靠这些 云端数据就能得到企业级的安全守护
- 【JavaSE04】Java中循环语句for,while,do···while
- jmeter测试udp收发数据
- 理解动态语言inline cache优化
- es 同义词 热更新 1.1版本
- .依存句法分析--提取用户评论
- Ubuntu 20.04安装Ros Noetic及Ubuntu 18.04安装ROS Melodic(两版本详细填坑)
- [绝对原创]从VS2003(.net1.1)升级到vs2005(.net2.0)全程跟踪记录
- jquery的autocomplete在firefox下不支持中文输入法的bug
- TP5的类似TP3使用‘DEFAULT_THEME’的配置修改主题风格的方法,以及常见模板错误...
- 惠普打印机墨盒更换教程_惠普打印机换墨盒图解 惠普打印机怎么换墨盒
- 微信小程序之 收藏功能
- 冯诺依曼结构和现代计算机结构模型
- selenium如何通过快捷键关闭浏览器打开的新页签
- 【华为OD机试-按身高和体重排队-Java】
- mysql eav_Magento的EAV模型窥探
- 全国计算机水平考试技巧,备考计算机等级考试的技巧
- swift 隐藏状态栏_Swift - 动态改变状态栏statusBar文字颜色(preferredStatusBarStyle无效问题)...
- php+一些常用小技巧,PHP 7 中的一些小技巧,你知道的有哪些
热门文章
- 所有计算机都可以安装win7,t570都可以装win7系统吗_win7 64位系统所有电脑都能装吗...
- 【名企招聘】4月26日19点,涛思数据带着高薪岗位JD和精美周边来啦~
- 最小二乘法节点定位(1)——小知识:非线性方程线性化
- Java--中文转换拼音,jpinyin-1.0.jar
- 浅析企业上下级沟通的障碍及对策
- RAC修改IP(public/virtual/scan)
- 免费电子书下载网站汇总
- excel 第3讲:查找、替换与定位
- UserWarning: Usage of dash-separated ‘script-dir‘ will not be supported in future versions. 笔记
- npm install报错10054,Error while executing