博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

6.python基础语法--循环结构

Posted on 2019-09-21 12:14  非我执笔灬  阅读(275)  评论(0编辑  收藏  举报

1.while循环:

  语法:

while condition:
    block
#当条件满足即condition为True,进入循环体,执行block
flag = 10
while flag:
print(flag)
flag -= 1
#给变量flag赋初始值10,作为循环的条件
#
flag为正整数时,while的判断条件一直为真,直到flag=0
#
flag -= 1,flag每次循环减一,该程序的结果就是竖着打印10~1这10个正整数

  一个有意思的小例子:在下面的这个程序里,输入界面里不管输入什么东西,系统都会自动给你返回输入的信息。(死循环的巧妙用法)

  

 2.for循环:

  语法:

for element in iteratable:
    block
#当可迭代对象中有元素可以迭代,进入循环体,执行block
for i in range(10):
    print(i,end=' ')
#该程序的输出结果是 0 1 2 3 4 5 6 7 8 
#这里注意range()函数的用法

3.continue语句:

  中断当前循环的当次执行,继续下一次循环。

  

 

  上述代码中i如果是奇数的话,那么对2取模的话为非0,if判断语句成立,我们就跳过当前的这次循环,继续下一次的循环。例如,i=1,1对2取模为非0,那么就continue,i返回range()中继续取值为2,2对2取模为0,if 0为假不成立,那么就执行print()语句。

for i in range(10)
    if i&0x01:
        continue
    print(i)
#这里需要注意的是&符号是位运算中的与的意思。
#这个程序的核心思想就是将正整数拆分成二进制与1的二进制进行与运算。
#因为1的二进制除了最后一位是1外,其余的全是0,其余正整数与之相与只需判断最后一位的与的结果是否为0即可,这样的话也可以判断奇偶数。
#从操作系统方面来讲,这样的代码更具效率。

4.break语句:

  终止当前循环。这里要注意与continue的区别,break是终止离自己最近的整个循环。

  

 

   上述的程序是求取1000内被7整除的前20个数。这里需要引入计数count的问题,因为需求是前20个数字。

 5.else子句:

  语法:

1 while condition:
2     block
3 else4     block
5 for element in iteratable:
6     block
7 else8     block

  如果循环正常的执行结束,就执行else子句;如果使用break终止,else子句不会执行。