控制流之while

while语句
只要在一个条件为真的情况下,while语句允许你重复执行一块语句。while语句是所谓 循环 语句的一个例子。while语句有一个可选的else从句。
使用while语句
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
一个例子

#!/usr/bin/python
#Filename:while.py
number = 23
true = True
while true:
    guess = int(raw_input(‘Enter an integer : ‘))
    if guess ==number:
        print ‘Congratulations,you guessed it.‘
        print "(but you do not win any prizes!)"
#        exit
        true=False
#stop
    elif guess < number:
        print ‘No,it is a little higher than that‘
    else:
        print ‘No,it is a litter lower than that‘
print ‘Done‘

它如何工作
在这个程序中,我们仍然使用了猜数游戏作为例子,但是这个例子的优势在于用户可以不断的猜数,直到他猜对为止——这样就不需要像前面那个例子那样为每次猜测重复执行一遍程序。这个例子恰当地说明了while语句的使用。
我们把raw_input和if语句移到了while循环内,并且在while循环开始前把running变量设置为True。首先,我们检验变量running是否为True,然后执行后面的 while-块 。在执行了这块程序之后,再次检验条件,在这个例子中,条件是running变量。如果它是真的,我们再次执行while-块,否则,我们继续执行可选的else-块,并接着执行下一个语句。
当while循环条件变为False的时候,else块才被执行——这甚至也可能是在条件第一次被检验的时候。如果while循环有一个else从句,它将始终被执行,除非你的while循环将永远循环下去不会结束!
True和False被称为布尔类型。你可以分别把它们等效地理解为值1和0。在检验重要条件的时候,布尔类型十分重要,它们并不是真实的值1。
else块事实上是多余的,因为你可以把其中的语句放在同一块(与while相同)中,跟在while语句之后,这样可以取得相同的效果。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

给C/C++程序员的注释记住,你可以在while循环中使用一个else从句。

时间: 2024-10-20 10:04:17

控制流之while的相关文章

Kotlin控制流

Kotlin中的控制流用于流程控制的表达式如if.when.for.while If表达式 Kotlin中,if是一个表达式,它会返回一个值.它可以用来替代三元运算符(条件?然后:否则) if var a = 1 var b = 2 var max = a if(b > a) max = b   println(max)             //2 if else var min: Int if(a < b){     min = a }else{     min = b } printl

java基础-控制流语句

一般情况下,代码的执行按照从上到下的顺序,然而通过加入一些判断,循环和跳转语句,你可以有条件地执行特定的语句. 接下来分三部分介绍Java的控制流语句,他们是判断语句(if-then, if-then-else, switch),循环语句(for, while, do-while)和跳转语句(break, continue, return). 判断语句 if-then语句 if-then语句是控制流语句中最基本的语句,它告诉程序如果制定的条件为true,则执行一段特定代码. if-then-el

C语言基础——控制流

控制流指定了语句的执行顺序. 1.顺序结构 2.选择结构 if:if else:if else if  else: switch: switch执行效率高,局限性大,case后面一定要加break: 表达式必须返回整数值:case必须是常量表达式. switch只能针对int,char 等基本数据类型使用: 3.循环结构 while: for:前置测试循环 先进行判断,在循环 do/while;后置测试循环 先循环一次,再判断 4.break, continue, return; break,

第九篇 Integration Services:控制流任务错误

本篇文章是Integration Services系列的第九篇,详细内容请参考原文. 简介在前面三篇文章,我们创建了一个新的SSIS包,学习了脚本任务和优先约束,并检查包的MaxConcurrentExecutables属性.我们检查.演示并测试优先约束赋值为"成功"."完成"."失败"时对工作流的影响.我们学习了SSIS变量和表达式,并将它们应用到优先约束.这一篇,we introduce fault tolerance by examinin

8.0 异常控制流 第8章 《深入理解计算机系统 原书第2版》

异常控制流 定义:现代操作系统对于控制流发生突变所作出的反应 全称:Exception Control Flow 缩写:ECF 各层形态: 1.硬件层:硬件检测到的事件会触发控制突然转移到异常处理程序: 2.操作系统层:在操作系统层,内核通过上下文转换,将控制从一个用户进程转移到另外一个用户进程: 3.应用层:一个进程可以发信号到另外一个进程,而接收者会将控制突然转移到它的一个信号处理程序. 描述:一个程序可以通过回避通常的栈规则,并执行到其他函数中任意位置的非本地跳转来对错误做出的反应. 工作

【语言对比】控制流语法对比

在了解各个语言支持的数据类型之后,接下来要对比的,就是各种语言支持的各种控制结构. 1.选择控制结构 Python的选择语句if/elif/else : 语法含义上和C++.JAVA语言没有区别,只是在语法格式上有所不同.首先,采用elif作为else if的缩写(其他的脚本语言中也大部分是这样),其次,对于每一个选择条件,有冒号作为截止,其他的语言都是采用{}来标识代码段的.Python中是没有类似于JAVA和C++中的switch语句的,至于原因,是因为python中有一个很好的方式能够代替

[Python 3系列]控制流

编程的真正力量不仅仅在于运行一条条的指令,就像任务清单那样.根据表达式求值的结果,程序可以决定下一步的操作."控制流语句"决定了在什么条件下执行哪些python语句. 布尔值 虽然整型.浮点型和字符串数据类型有无数种可能的值,但"布尔"数据类型只有两种值:True和False.在作为python代码输入时,布尔值True和False不像字符串,两边没有引号,它们总是以大写字母开头.布尔值也可以用在表达式中,并且可以保存在变量中.如果大小写不正确,或者试图用True和

Swift3.0P1 语法指南——控制流

原档:https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/ControlFlow.html#//apple_ref/doc/uid/TP40014097-CH9-ID120 1.For循环 (1)for in 使用for-in来遍历一个集合里的元素. 1 for index in 1...5 { 2 print("\(index)

4、Python控制流

4-1.Python控制流 控制流的类型有三种: 1,顺序结构: 2,分支结构: (if) 3,循环结构:(while,for) 4-2.分支结构if 格式: if 是这样: 执行这一部分的语句 elif 是这样: 执行这一部分的语句 else: 执行这部分语句 例子: 4-3.循环结构while 格式: while 条件为真: 循环执行该部分语句 else: 条件为假,则执行这部分语句 #else部分可以省略 例子: 例子: 4-4.循环结构for 格式: for i in 集合: 执行该部分

异常控制流 第十周11.15~11.22

第八章 异常控制流 控制流:控制转移序列. 控制转移:从一条指令到下一条指令. 异常控制流:现代操作系统通过使控制流发生突变来对系统状态做出反应,这些突变称为异常控制流. 作为程序员,理解ECF很重要,这有很多原因: 理解ECF将帮助你理解重要的系统概念.ECF是操作系统用来实现I/O.进程和虚拟存储器的基本机制,在能够真正理解这些重要概念之前,你必须须理解ECF. 理解ECF将帮助你理解应用程序是如何与操作系统交互的.应用程序通过一个叫做陷阱或者系统调用的ECF形式,向操作系统请求服务. 理解