第四章:python循环语句

本文介绍了Python中的while循环基础语法,包括案例演示如何计数和猜数字游戏。接着讲解了while循环的嵌套应用,如表白100天的示例。然后转向for循环的基础语法和使用,以及for循环在打印九九乘法表等场景的应用。此外,还讨论了循环控制语句break和continue的使用方法。最后提供了一个综合案例,涉及根据员工绩效发放工资的模拟程序。
摘要由CSDN通过智能技术生成

一、while循环的基础语法

  • 语法

  • 注意

  • 案例练习

i = 1
num = 0
while i < 101:
    num = num + i
    i = i + 1
print(num)
import random
num = random.randint(1, 100)
flag = True
count = 0
while flag:
    guess_num = int(input('请输出猜测的数字:'))
    if guess_num == num:
        flag = False
        print('恭喜你,猜对了')
    else:
        if guess_num > num:
            print('输入的数字太大了')
        else:
            print('输入的数字太小了')
    count += 1
print(f'一共猜测了:{count}次')

二、while循环的嵌套应用

  • 案例:表白100天,每一天都会送10朵玫瑰花

(注意:嵌套是

根据空格缩进来进行实现的,注意条件的控制,避免无限循环,除非真的需要无限制循环)

# 外层:表白100天的控制
# 内层:每天的表白都送10只玫瑰花的控制
i = 1
while i <= 100:
    print(f'今天是第{i}天,准备表白...')
    j = 1
    while j <= 10:
        print(f'送给小美第只玫瑰花')
        j += 1
    print('小美我爱你')
    i += 1
print(f'坚持到第{i-1}天,表白成功')
  • 案例:掌握使用while嵌套循环,打印九九乘法表

i = 1
while i <= 9:
    j = 1
    while j <= i:
        if j == i:
            print(f'{j}*{i}={i * j}\t')
        else:
            print(f'{j}*{i}={i*j}\t', end='')
        j += 1
    i += 1
  

或者

三、for循环的基础语法

    • 基础语法

  • 注意

同时也需要有空格进行缩进

  • 案例练习

name = 'itheima is a brand of itcast'
count = 0
for x in name:
    if x == 'a':
        count += 1
print(f'被统计的字符串中有{count}个a')
    • range语句使用(常用于for循环中,控制for循环次数)

range语句的功能是:获得一个数字序列(可迭代类型的一种)

  • 案例

num = 100
count = 0
for x in range(1,100):
    if x % 2 == 0:
        count += 1
print(f'1到100(不包含100)范围内,有{count}个偶数')

3.变量作用域

四、for循环的嵌套应用

# 坚持表白100天,每天都送10朵花
i = 0
for i in range(1, 101):
    print(f'今天是向小美表白的第{i}天,加油坚持')
    for j in range(1, 11):
        print(f'给小美送的第{j}只玫瑰花')
    print('小美喜欢你')
print(f'第{i}天,表白成功')

用for循环来打印九九乘法表

# 通过外层循环可以控制行数
for i in range(1, 10):
# 通过内层循环控制每一行的数据
    for j in range(1, i+1):
        print(f'{j}*{i}={j*i}\t', end='')
# 在外层循环可以通过print输出一个回车进行换行
    print()

五、循环终端:break 和 continue

continue:是临时中断,中断本次循环,进入下一次的循环

break:永久中断,直接结束所在的整个循环

# 只会输出5个语句1
for i in range(1, 6):
    print('语句1')
    continue
    print('语句2')

# 在外层的一次循环中输出 语句1 5个语句2 语句4
for i in range(1, 6):
    print('语句1')
    for j in range(1, 6):
        print('语句2')
        # 这个continue只可以影响嵌套内的for循环,对外层的不影响
        continue
        print('语句3')
    print('语句4')

# 仅输出a c
for i in range(1, 101):
    print('a')
    break
    print('b')
print('c')

# 仅输出abd abd abd abd abd abd
for i in range(1, 6):
    print('a')
    for j in range(1, 6):
        print('b')
        break
        print('c')
    print('d')

综合案例

money = 10000
for i in range(1, 21):
    import random
    score = random.randint(1, 10)
    if score < 5:
        print(f'员工{i}:绩效分{score},不发工资,下一位')
        continue
    if money > 1000:
        money -= 1000
        print(f'向员工{i}发放工资1000元,账户余额还剩余{money}元')
    else:
        print('工资发完了,下个月领取吧')
        break

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值