阅读 159

python 循环+break continue

python 循环+break continue

Python 提供了 for 循环和 while 循环(在 Python 中没有 do..while 循环)

Python While 循环语句

python while循环语句:执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值

 

 

 

如图:https://www.runoob.com/wp-content/uploads/2014/05/006faQNTgw1f5wnm06h3ug30ci08cake.gif

https://www.runoob.com/wp-content/uploads/2013/11/loop-over-python-list-animation.gif

 

 在while循环中continue和break

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!"

复制代码

注意:以上的无限循环你可以使用 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"

复制代码

简单语句组

类似 if 语句的语法,如果你的 while 循环体中只有一条语句,你可以将该语句与while写在同一行中

复制代码

#!/usr/bin/python flag = 1 
while (flag): print 'Given flag is really true!'
 print "Good bye!"

复制代码

Python for 循环语句

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

 

复制代码

#!/usr/bin/python# -*- coding: UTF-8 -*-
 for letter in 'Python':     # 第一个实例
   print '当前字母 :', letter
 
fruits = ['banana', 'apple',  'mango']for fruit in fruits:        # 第二个实例
   print '当前水果 :', fruit 
print "Good bye!"

复制代码

 

 

通过序列索引迭代

另外一种执行循环的遍历方式是通过索引

 

复制代码

#!/usr/bin/python# -*- coding: UTF-8 -*- fruits = ['banana', 'apple',  'mango']for index in range(len(fruits)):   print '当前水果 :', fruits[index] 
print "Good bye!"

复制代码

以上实例我们使用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。

循环使用 else 语句

在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

 

 

复制代码

#!/usr/bin/python# -*- coding: UTF-8 -*-
 for num in range(10,20):  # 迭代 10 到 20 之间的数字
   for i in range(2,num): # 根据因子迭代
      if num%i == 0:      # 确定第一个因子
         j=num/i          # 计算第二个因子
         print '%d 等于 %d * %d' % (num,i,j)         break            # 跳出当前循环
   else:                  # 循环的 else 部分
      print num, '是一个质数'

复制代码

 

 

 

 

Python 循环嵌套

Python 语言允许在一个循环体里面嵌入另一个循环。

Python for 循环嵌套语法:

for iterating_var in sequence:   for iterating_var in sequence:
      statements(s)
   statements(s)

Python while 循环嵌套语法:

while expression:   while expression:
      statement(s)
   statement(s)

你可以在循环体内嵌入其他的循环体,如在while循环中可以嵌入for循环, 反之,你可以在for循环中嵌入while循环。

以下实例使用了嵌套循环输出2~100之间的素数:

复制代码

#!/usr/bin/python# -*- coding: UTF-8 -*- i = 2while(i < 100):
   j = 2   while(j <= (i/j)):      if not(i%j): break
      j = j + 1   if (j > i/j) : print i, " 是素数"
   i = i + 1 
print "Good bye!"

复制代码

 

 

Python break 语句

Python break语句,就像在C语言中,打破了最小封闭for或while循环。

break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。

break语句用在while和for循环中。

如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。

复制代码

#!/usr/bin/python# -*- coding: UTF-8 -*-
 for letter in 'Python':     # 第一个实例
   if letter == 'h':      break
   print '当前字母 :', letter
  
var = 10                    # 第二个实例while var > 0:              
   print '当前变量值 :', var
   var = var -1   if var == 5:   # 当变量 var 等于 5 时退出循环
      break
 print "Good bye!"

复制代码

 

 

Python continue 语句

Python continue 语句跳出本次循环,进入该循环的下一次循环,而break跳出整个循环。

continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。

continue语句用在while和for循环中。

复制代码

#!/usr/bin/python# -*- coding: UTF-8 -*-
 for letter in 'Python':     # 第一个实例
   if letter == 'h':      continue
   print '当前字母 :', letter
 
var = 10                    # 第二个实例while var > 0:              
   var = var -1   if var == 5:      continue
   print '当前变量值 :', varprint "Good bye!"

复制代码

 

我们想只打印0-10之间的奇数,可以用continue语句跳过某些循环:

复制代码

#!/usr/bin/python# -*- coding: UTF-8 -*-n = 0while n < 10:
    n = n + 1    if n % 2 == 0:      # 如果n是偶数,执行continue语句
        continue        # continue语句会直接继续下一轮循环,后续的print()语句不会执行
    print(n)

复制代码

continue 语句是一个删除的效果,他的存在是为了删除满足循环条件下的某些不需要的成分:

复制代码

#!/usr/bin/python# -*- coding: UTF-8 -*-var = 10while var > 0:
    var = var -1    if var == 5 or var == 8:        continue
    print '当前值 :', varprint "Good bye!"

复制代码


文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐