博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python while循环和for循环
阅读量:4170 次
发布时间:2019-05-26

本文共 1692 字,大约阅读时间需要 5 分钟。

本文,我们通过python2学习一下python中的while循环和for循环。

首先,通过这两种循环,编写python2代码,找2~100间的所有素数。

#通过while循环,找2~100间的所有素数

from math import sqrt
j=2
while j<=100:#依次判断2~100间的数,是否是素数
    i=2
    k=int(sqrt(j))
    #依次判断2~k间的每一个数,检查j能否被其中的某个数整除
    while(i<=k):
        if j%i==0:#若j能够被2~k间的某个数整除,则说明j不是素数,通过break结束while循环。
            break
        i=i+1
    #有2种情况会导致while循环结束
    # 1》while循环中的条件i<=k不成立时,结束了while循环,此时,i>k,说明j是个素数
    # 2》j%i==0为真,通过break结束了while循环,此时,i<=k,说明j不是素数
    if (i>k):# i>k,说明j是个素数,输出该素数。
        print j,
    j=j+1#更新j的取值,判断下一个数是否是素数

运行结果如下:

2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

#通过for循环,找2~100间的所有素数

from math import sqrt
for j in range(2,101):#依次判断2~100间的数,检查其是否是素数
    flag=1#判断整数j时,首先将flag置为1,表示初始时,假定j是素数
    k=int(sqrt(j))
    for i in range(2,k+1):#依次判断2~k间的每一个数,检查j能否被其中的某个数整除
        if j%i==0:#若j能够被i整除,则将flag置为0,表示j不是素数,并且结束for循环
            flag=0
            break
    if(flag==1):#若flag是1,说明j是素数,输出j
        print j,

运行结果如下:

2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

循环中,经常使用break语句和continue语句,二者是有区别的:

break是打断循环,提前结束循环,继续执行循环之后的语句。

continue是结束本次循环,循环体中continue之后的语句不执行,继续执行下一次循环。

break举例如下:

s=0

i=1
while i<=5:
    s+=1
    if i==3:
        break#打断while循环,提前结束while循环
    print "i=%d,s=%d"%(i,s)
    i+=1

运行结果如下:

i=1,s=1

i=2,s=2

continue举例如下:

s=0
i=1
while i<=5:
    s+=1
    i=i+1
    if i==3:
        continue#结束本次循环,循环体中continue后边的语句不执行,继续进行下一次循环
    print "i=%d,s=%d"%(i,s)

运行结果如下:

i=2,s=1

i=4,s=3
i=5,s=4
i=6,s=5

python中,循环常常结合else使用:

    如果循环代码从break处终止,跳出循环(不执行else代码)
    如果循环代码正常结束,则执行else中的代码

举例如下:

1》循环代码正常结束,则执行else中的代码

k=5

for i in range(1,10):
    if k==3:
        break
    else:
        print i,
else: #输出for循环结束时,i 的值
    print i

运行结果如下:

1 2 3 4 5 6 7 8 9 9

2》循环代码从break处终止,跳出循环(不执行else代码)

for i in range(1,10,2):

    if i%5 == 0:
        print "Bingo!"
        break#条件成立时,结束for循环,else部分不执行
else:
    print i

运行结果如下:

Bingo!

转载地址:http://mfyai.baihongyu.com/

你可能感兴趣的文章
插入排序用递归实现
查看>>
工作流审批平台-审批流程-指定审批部门
查看>>
商务智能-系统概述-数据图形方式
查看>>
软件项目管理系统-项目管理-模块定义-开发内容
查看>>
工作流审批平台-审批功能
查看>>
商务智能-基本方法-特征与角度
查看>>
软件项目管理系统-项目管理-模块定义-开发笔记
查看>>
工作流审批平台-业务申请-申请书一览
查看>>
商务智能-基本方法-数据钻取
查看>>
C++程序员技术需求规划(发展方向)
查看>>
A Game of Thrones(59)
查看>>
2018.3.19
查看>>
A Game of Thrones(97)
查看>>
A Game of Thrones(98)
查看>>
2018.3.20
查看>>
2018.3.21
查看>>
2018.3.22
查看>>
2018.3.23
查看>>
A Game of Thrones(102)
查看>>
2018.4.29
查看>>