分支和循环

1. if多分支结构

1.1 if-elif-else 结构

语法

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

应用:某一个条件成立,其他条件都不成立的情况下

# 根据分数打印:优秀(>=90)、良好([75, 90))、中等([60, 75))、不及格(<60)
age = 18
if not 0 < age < 150:
    print("这不是人")
elif age < 18:
    print("未成年")
else:
    print("成年")
1.2 if-if 结构

语法

if 条件1:
    代码块1
if 条件2:
    代码块2
if 条件3:
    代码块3
......

单独使用多个if - 条件之间存在:其中一个条件成立,其他条件也成立

例如: 如果今天出太阳,我去吃好吃的;如果今天我心情好,我去打一局游戏。

上述的两个条件可以同时满足,这种情况用if

2.三目运算符

语法

1 if 条件语句 else2
在条件语句为True时,运算结果为值1,为False时,运算结果为值2
age = 21
result = '成年' if age >= 18 else '未成年'
print(result)

3. for循环

语法:

for 变量 in 序列:
    循环代码块
'''
执行过程

让变量去序列中取值,一个一个的取,取完为止,每取一个值就执行一次循环体。
for循环循环由序列中的元素的个数决定
'''
3.1 range函数的用法
  1. range(N)

  2. range(M,N)

  3. range(M,N,step)

    for x in range(3):
        print('x:', x)
    print('==========')
    for x in range(18, 26):
        print('x:', x)
    print('==========')
    for x in range(1, 10, 2):
        print('x:', x)
    print('==========')
    for x in range(20, 10, -3):
        print('x:', x)
    

    练习题

    # 统计1000以内能被3整除但是不能被7整除的数的个数
    # 方法一 循环次数多,逻辑简单
    result = 0
    for i in range(1000):
        if i % 3 == 0 and i % 7 != 0:
            result += 1
            # print(i)
    print(result)
    # # 方法二  降低循环次数
    result = 0
    for i in range(3,1000,3):
        if i % 7 != 0:
            result += 1
            # print(i)
    print(result)
    
    result = 0
    for i in range(0, 100, 3):
        result += i
    print(result)
    

4. while 循环

语法

while 条件语句:
    循环体
#执行过程:
#先判断条件语句是否为True,如果为True就执行循环体,执行完循环体在判断条件语句是否为True, 为True又执行循环体,
#以此类推,如果条件语句为False,循环就结束!

# while 循环
sum1 = 0
while sum1 < 10:
    print(sum1)
    print("hello world!")
    sum1 += 1

练习题

# 练习1:用while循环打印:2,5,8,11,14,17
sum1 = 2
while sum1 <= 17:
    print(sum1)
    sum1 += 3

sum1 = 0
while sum1 < 100:
    if sum1 % 7 != 0:
        print(sum1)
    sum1 += 3

补充:for循环和while循环如何选择
循环次数确定用for循环,反之用while循环

break和continue

1.1 continue

遇到continue,那么此次循环结束,直接进入下一次循环

for i in range(10):
    if i % 2:
        continue
    print(i)
# 0,2,4,6,8
# 奇数时跳过此次循环,偶数是打印
1.2 break

遇到continue,那么整个循环结束

for x in range(1, 10):
    if x % 3 == 0:
        break
    print(x)
# 1,2
# 当x取 3 时 满足if条件,进行到break,整个循环结束

补充:循环的else结构

'''
for 变量 in 序列:
    循环体
else:
    代码段
    
    
while 条件语句:
    循环体
else:
    代码段
    
else不会影响原来的循环体,else只会在循环自然结束的情况下才执行,在遇到break结束的情况下 不会执行。


'''
例子:
for i in range(3):
    print('hello world!')
print("============")
for i in range(3):
    print('hello world!')
else:
    print('say goodbye')
   
'''
hello world!
hello world!
hello world!
============
hello world!
hello world!
hello world!
say goodbye
'''
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

假发别带歪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值