本文目录一览:
python中while循环的问题
Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:
while 判断条件:
执行语句……
执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假false时,循环结束。
执行流程图如下:
Gif 演示 Python while 语句执行过程
实例
#!/usr/bin/python
count = 0while (count 9): print 'The count is:', count
count = count + 1
print "Good bye!"
运行实例 »
以上代码执行输出结果:
The count is: 0The count is: 1The count is: 2The count is: 3The count is: 4The count is: 5The count is: 6The count is: 7The count is: 8Good bye!
while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:
# continue 和 break 用法
i = 1while i 10:
i += 1
if i%2 0: # 非双数时跳过输出
continue
print i # 输出双数2、4、6、8、10
i = 1while 1: # 循环条件为1必定成立
print i # 输出1~10
i += 1
if i 10: # 当i大于10时跳出循环
break
无限循环
如果条件判断语句永远为 true,循环将会无限的执行下去,如下实例:
实例
#!/usr/bin/python# -*- coding: UTF-8 -*-
var = 1while var == 1 : # 该条件永远为true,循环将无限执行下去
num = raw_input("Enter a number :")
print "You entered: ", num
print "Good bye!"
以上实例输出结果:
Enter a number :20You entered: 20Enter a number :29You entered: 29Enter a number :3You entered: 3Enter a number between :Traceback (most recent call last):
File "test.py", line 5, in module
num = raw_input("Enter a number :")KeyboardInterrupt
注意:以上的无限循环你可以使用 CTRL+C 来中断循环。
循环使用 else 语句
在 python 中,while … else 在循环条件为 false 时执行 else 语句块:
实例
#!/usr/bin/python
count = 0while count 5: print count, " is less than 5"
count = count + 1else: print count, " is not less than 5"
以上实例输出结果为:
0 is less than 51 is less than 52 is less than 53 is less than 54 is less than 55 is not less than 5
简单语句组
类似 if 语句的语法,如果你的 while 循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:
实例
#!/usr/bin/python
flag = 1
while (flag): print 'Given flag is really true!'
print "Good bye!"
python中怎样退出while循环
第一种方式,当条件不满足时会自动退出循环:
while 条件:
func
第二种方式,用break退出,满足条件时会自动退出。
while True:
func
if 条件:
break,
func代表一般代码。
关于python while循环的问题
首先,外层while的i为0时,内层的while循环了2次,因此打印了两次,内层while循环完毕后,此时的j=0了(减了2次),i的值为1。
然后,外层while的进行第二次循环(条件满足12),此时的i在内层while中因ij的值不满足条件(10),因此不输出打印信息,第二次对i进行加法运算,此时i的值为2了
最后,外层while想要进行第三次循环的时候,外层while的条件不满足要求了(22不满足条件了),此时中断循环了
结论就是:第一次外层while循环时,内层的while循环了2次,第二次外层循环时,内层while的循环体没有执行,也就是循环了0次。第三次外层while停止循环