2021-03-04

循环语句的使用方法

1.if多分支 - 根据不同的条件做不一样的事情,但是要求条件之间存在:其中某一个条件成立了,另外的其他条件一定不会成立

语法:
if 条件语句1:
    代码段1
elif 条件语句2:
    代码段2
elif 条件语句3:
    代码段3
...
else:
    代码段N

例题
根据分数对成绩进行评级:A(90 ~ 100)、B(80 ~ 89)、C(60~79)、D(60分以下),分数是有效的百分制分数
score = 30
方法一:

if 90 <= score <= 100:
    print('A')
elif 80 <= score <= 89:
    print('B')
elif 60 <= score <= 79:
    print('C')
else:
    print('D')

方法二:

if score >= 90:
    print('A')
elif score >= 80:
    print('B')
elif score >= 60:
    print('C')
else:
    print('D')

2.if嵌套
例题
练习:判断一个数是否是偶数,如果是打印’偶数’否则打印’奇数’,同时判断这个数是否是4的倍数,如果是打印’4的倍数’
``

`num = 20
if num % 2 == 0:
    print('偶数')
    if num % 4 == 0:
        print('4的倍数')
else:
    print('奇数')

3.while 循环

语法:
while 条件语句:
    循环体
说明:
1while  - 关键字;固定写法
2)条件语句 - 任何有结果的表达式
3)循环体   -while保持一个缩进的一条或者多条语句;循环体就是需要重复执行的代码段

执行过程:
先判断条件语句是否为True,为True就执行循环体,执行完再判断条件语句是否为True,为True就执行循环体,...
以此类推,直到判断条件语句的时候结果为False,整个循环就结束。

列题:1打印1~100

num = 1
while num < 100:
    print(num)
    num += 1
num = 0
while num < 10:
    print('其实我很好')
    num += 1

2.for循环和while循环的先择
当循环次数不确定的时候使用while,否则使用for循环
例题1)

w = 'abc123'
i_pw = input('请输入密码:')
while i_pw != pw:
    i_pw = input('请输入密码:')
方法二:
pw = 'abc123'
i_pw = ''
while i_pw != pw:
    i_pw = input('请输入密码:')

例题2)

rom random import randint
num = randint(0, 99)    # 产生0到99的随机整数并且保存到变量num中
i_num = int(input('输入你想到的数字(0~99):'))
while i_num != num:
    if i_num > num:
        print('大了,再小点吧')
    else:
        print('再小点')
    i_num = int(input('请输入数字(0~99):'))
print('恭喜你!猜对了。')

3.continue和break

continuebreak只能在循环体中使用
continue: 结束一次循环(当执行循环体的时候遇到continue,当次循环结束,直接进入下次循环的判断)
break:结束整个循环(当执行循环体的时候遇到break,整个循环直接结束)

例题1)

for x in range(5):
    print('====')
    continue
    print('++++')
    print('----')

例题2)

for x in range(5):
    if x % 2:
        continue
    print(x)

过程详解:

x: 0~41次循环:x = 0 -> if x % 2 -> if 0 % 2 -> if False; print(x) -> print(0)2次循环:x = 1 -> if x % 2 -> if 1 % 2 -> if 1 -> if True: continue(当次循环结束)3次循环:x = 2 -> if x % 2 -> if 2 % 2 -> if False; print(x) -> print(2)4次循环:x = 3 -> if x % 2 -> if 3 % 2 -> if True: continue(当次循环结束)5次循环:x = 4 -> if x % 2 -> if 4 % 2 -> if False; print(x) -> print(4)
循环结束

0
2
4

使用while循环的套路

while True:
    每次循环要做的事情
    if 循环结束的条件:
        break

2.else

python中完整的for循环和while循环后面都有else结构,else结构的存在不影响原循环的执行。
for 变量 in 序列:
    循环体
else:
    代码段
    
while 条件语句:
    循环体
else:
    代码段
    
当循环是因为遇到break而结束的,那么循环后面else里面的代码不会执行。
循环结束的时候不是因为遇到break,那么else后面的代码段会执行
for x in range(5):
    print(x)
    if x == 3:
        break
else:
    print('else中的代码')

基础题

  1. 根据输入的成绩的范围打印及格 或者不及格

    
    
   grade =float(input('输入你要查询的成绩:'))
   if grade >= 60:
       print('成绩合格')
   else:
       print('成绩不合格')

2. 根据输入的年纪范围打印`成年`或者`未成年`,如果年龄不在正常范围内(0~150)打印`这不是人!`。

   age = int(input('输入年龄:'))
   if 18 <= age <= 150:
       print('已成年,开启老司机模式:')
   elif age < 18:
       print('未成年,革命尚未成功,同志还需努力:')
   else:
       print('恭喜您,开启飞升模式。不是人啦:')

3. 输入两个整数a和b,若a-b的结果为奇数,则输出该结果,否则输出提示信息`a-b的结果不是奇数`。

   a = 99
   b = 86
   if (a - b) % 2 != 0:
       print(a-b)
   else:
       print('a-b的结果不是奇数')

4. 使用for和while循环输出 0~100内所有3的倍数。

   num = 1
   for num in range(0, 100, 3):
       print(num)
   num = 1
   while num < 100:
       num += 3
       print(num - 1)

5. 使用for和while循环输出100~200内个位数或者十位数能被3整除的数。

   for i in range(100, 200):
       if i % 10 % 3 == 0 or i // 10 % 10 % 3 == 0:
           print(i)
   i = 100
   while i < 201:
       if i % 10 % 3 == 0 or i // 10 % 10 % 3 == 0:
           print(i)
           i += 1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值