Python之流程控制语句2

循环语句:循环语句可以使指定的代码块重复执行指定的次数。
分类:whlie循环和for循环
1、while循环
语法:
while 条件表达式:
代码块
else :
代码块
执行流程:while语句在执行时,先对while后的条件表达式进行求值判断:如果判断结果为True,则执行循环体(代码块);循环体执行完毕,继续对条件表达式进行求值判断,以此类推;直到判断结果为False,则循环终止,如果有对应的else,则执行else。
注意:条件表达式恒为True,称为死循环

#条件表达式恒为True,称为死循环
while True:
    print('别惹我,我是死循环')

死循环就一直执行

#条件表达式恒为True,称为死循环
i=0
while i<8:
    print('别惹我,我是死循环')
#因为i=0始终小于8,所以条件表达式一直未True


所以写循环语句必有三条件:
(1)初始化表达式:通过初始化表达式初始化一个变量;
(2)条件表达式:用来设置循环执行的条件;
(3)更新表达式:修改初始化变量的值。
例1:

#写循环语句必有三条件:初始化、条件表达式、更新表达式
i=0#初始化
while i<8:#条件表达式
    i+=1#更新表达式
    print(i)
else:
    print('程序已执行完毕')

执行结果
例2:求100以内偶数的和

i=0 #初始化i
sum=0 #初始化sum
while i<100: #100以内的数
    i+=1   #每次自增1
    if i % 2==0: #如果一个数能被2整除,这个数是偶数
        sum+=i #求偶数的和
print('sum=',sum) #打印出结果

执行结果
例3:求1000以内的水仙花数:水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:13+53+3**3= 153)。

#水仙花数
#1000以内的所有的3位数
#判断他是不是水仙花数
i=100
#1000以内的水仙花数
while i<1000:
    i+=1
    a = i // 100 #求i百位上的数
    b = i // 10 % 10  #求i十位数的数
    c = i % 10 #求i个位上的数
    if  i==a**3+b**3+c**3: #判断i是否是水仙花数
        print(i)
print('计数已完成')

输出结果
例4:用户任意输入一个数,判断是否是质数。

num=int(input('用户输入的任意的整数:'))
#1既不是不质数,也不是合数,最小从2开始判断
i=2
#创建一个变量,用来记录num是否是质数,默认num是质数
flag=True
while i<num:
      #判断num
      if num % i==0:
            #大于2的数,不是质数就是合数,先判断这个数不是质数,再输出是合数
            flag=False
      i+=1
      if flag:
            print(num,'是质数')
else:
      print(num,'不是质数')

输出结果
while循环嵌套:循环嵌套时,外层循环每执行一次,内层循环就要执行一遍

#循环嵌套时,外层循环每执行一次,内层循环就要执行一遍
#外层循环控制高度,外层循环控制宽度
i=0
while i<4:
    #创建一个内层循环来控制图形的宽度
    j=0
    while j<i+1:
        print('#',end='')
        j+=1
    print('#')
    i+=1

执行结果
例:打印99乘法表

#打印99乘法表
#创建一个外层循环来控制图形的高度
i=0
while i<9:
    i+=1
    j = 0
    #创建一个内层循环来控制宽度
    while j<i:
        j+=1
        print(f'{j}*{i}={i*j} ',end='')
    print()

运行结果

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值