【Python笔记】基础篇(四)

文章详细介绍了Python中的循环语句,包括while循环的基础应用、猜数字小练习、嵌套使用,以及for循环的语法、字母计数练习。同时,对比了while和for循环的区别,并讲解了range函数的不同用法。此外,还涉及了循环中断的break和continue语句,并通过发工资的小练习进行了实践应用。
摘要由CSDN通过智能技术生成

参考视频和资料:第一阶段-第四章-01-while循环的基础应用_哔哩哔哩_bilibili

Day04

对应视频:第一阶段第四章

第四章 循环语句

循环同样是程序最基础、最核心的逻辑功能,广泛存在,是非常多功能实现的基础

目录

第四章 循环语句

 一、while循环  

           1.语法

        2.猜数字小练习

        3. while嵌套

        4.打印九九乘法表小练习

二、 for循环

        1.语法:

        2.字母计数小练习

三、while与for循环的区别

 四、rang语句

          1.语法1

         2.语法2                 

         3.语法3   

        4.数字统计小练习

五、for循环中临时变量的作用域

六、for循环的嵌套

                1.语法

                2.九九乘法表小练习

                3.while与for循环的相互嵌套

七、循环中断:break和continue

        1.continue

        2.break

        3.发工资小练习


 一、while循环  

           1.语法

                while  条件:
                        条件满足时要做的事1
                        条件满足时要做的事2
                        条件满足时要做的事3
                        ......

        while的条件要求得到bool类型,即:True表示继续循环,False表示循环终止

        【注意】:(1)设置终止条件,不然会出现死循环

                        (2)注意空格缩进

"""
循环语句基础练习:求从1加到100的和
"""

i = 1
sum = 0

while i <= 100:
    sum += i
    i += 1

print(f"从1加到100的和是:{sum}")

        2.猜数字小练习

                 (1)方法一

"""
设置一个1~100的随机整数变量,通过while循环,配合input语句,判断输入的数字是否等于随机数字
1. 无限次机会,直到猜中为止
2. 每次猜不中都会提示大或小
3. 猜完数字后,提示猜了几次
"""

import random
randnum = random.randint(1,100)
num = 1
guess_num = int(input("请输入您所猜的数字:"))

while guess_num != randnum:
    if guess_num < randnum:
        guess_num = int(input("您猜小了,请再次输入您所猜的数字:"))
    else:
        guess_num = int(input("您猜大了,请再次输入您所猜的数字:"))
    num += 1

print(f"恭喜您猜对了,总共猜了{num}次")

                (2)方法二:设置flag

import random
randnum = random.randint(1,100)

count = 0
flag = True
while flag:
    guess_num = int(input("请输入您猜测的数字:"))
    count += 1
    if guess_num == randnum:
        print(f"恭喜您猜中了!总共猜了{count}次")
        flag = False
    else:
        if guess_num < randnum:
            print("您猜小了")
        else:
            print("您猜大了")

        3. while嵌套

           (1)语法

                        while  条件1:
                                条件1满足时要做的事1
                                条件1满足时要做的事2
                                条件1满足时要做的事3
                                ......
                                while  条件2:
                                        条件2满足时要做的事1
                                        条件2满足时要做的事2
                                        条件2满足时要做的事3
                                        ......

        【注意】:(1)缩进与冒号

                        (2)注意设置条件,避免出现无限循环

        补充:

                (1)输出不换行:print语句中加上end=' '

print("Hello",end='')
print("World",end='')


                (2)制表符:\t——效果等同于tab键,他可以让我们的多行字符串对齐

print("Hello World")
print("itheima best")

print("Hello\tWorld")
print("itheima\tbest")


                (3)print():内容空,就是输出一个换行
 

        4.打印九九乘法表小练习

i = 1

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


二、 for循环

        1.语法:

                for  临时变量  in  待处理数据集:
                        循环满足条件时执行的代码

        表达的意思:每次循环都从待处理数据集中依次取出数据,赋给临时变量,执行循环体
                即:遍历循环

name = "lisi"

for x in name:
    print(x)


        【注意】:

                (1)缩进与冒号

                (2)for循环是无法定义循环条件的,只能从被处理的数据集中,一次取出内容进行处理。一般无法构建无限循环,也就是被处理的数据集不可能无限大

        补充:for循环中待处理的数据集也就是序列类型

                序列类型:其内容可以被一个一个地取出,包括字符串、列表和元组等

        2.字母计数小练习

"""
统计itheima is a brand of itcast中含有多个个a
"""

sum = 0

for x in "itheima is a brand of itcast":
    if x == "a":
        sum += 1

print(f"itheima is a brand of itcast中共含有{sum}个a")

三、while与for循环的区别

                for循环与while循环完成的功能差不多,区别如下:
                        1.while循环的循环条件是自定义的,自行控制循环条件
                        2.for循环是一种【轮询】机制,是对一批内容进行逐个处理——将待办事项逐个完成的循环机制

 四、rang语句


        range语句可以获得一个简单的数字序列     

          1.语法1

                range(num)
                        获取一个从0开始到num结束的数字序列(不含num本身)

for x in range(3):
    print(x)


 

         2.语法2

                range(num1,num2)
                获取一个从num1开始到num2结束的数字序列(不含num2本身)

for x in range(5,8):
    print(x)


                    

         3.语法3   

                range(num1,num2,step)
                获取一个从num1开始到num2结束的数字序列(不含num2本身,数字之间的步长以step为准()step默认为1

for x in range(5,10,2):
    print(x)

 

                小技巧:可以使用range来确定for循环要执行的次数

for x in range(3):
    print("好好学习")


       

        4.数字统计小练习

print("统计从1到num(不包含num)中的偶数出现的个数")
num = int(input("请输入终止数字num:"))
sum = 0

for x in range(1,num):
    if x % 2 == 0:
        sum += 1

print(f"从1到{num}中一共出现了{sum}次偶数")

五、for循环中临时变量的作用域

        1.编程规范上:只限定在for循环的内部
        2.实际上:可以在for循环外部访问临时变量,但是不建议这么做
                解决方法:在for循环之前定义临时变量。相当于是在执行循环的时候,不断去覆盖临时变量的值

i = 0

for i in range(3):
    print(i)

print(i)

六、for循环的嵌套

                1.语法

                         for  临时变量  in  待处理数据集(序列):
                                循环满足条件时执行的代码1
                                循环满足条件时执行的代码2
                                循环满足条件时执行的代码N
                                ......
                                for  临时变量  in  待处理数据集(序列):
                                        循环满足条件时执行的代码1
                                        循环满足条件时执行的代码2
                                        循环满足条件时执行的代码N
                                        ......

                2.九九乘法表小练习

for i in range(1,10):
    for j in range(1,i+1):
        print(f"{j}*{i}={j*i}\t",end='')

    print()


      

                3.while与for循环的相互嵌套

                         for循环或者while循环:
                                循环满足条件时执行的代码1
                                循环满足条件时执行的代码2
                                循环满足条件时执行的代码N
                                ......
                                for循环或者while循环:
                                        循环满足条件时执行的代码1
                                        循环满足条件时执行的代码2
                                        循环满足条件时执行的代码N
                                        ......

七、循环中断:break和continue

        1.continue

                中断所在循环的当次执行,直接进入下一次循环
                for循环和while循环中都可以用
                常用于循环中因为某些原因临时结束本次循环,进入下一个循环中
                【注意】:continue关键字只控制它所在的循环

for i in range(1,3):
    print("语句1")
    for j in range(1,3):
        print("语句2")
        continue
        print("语句3")
    print("语句4")

                continue语句在内层的for循环,所以当运行完语句2后,会中断内层for循环的该次循环,进行下一次循环,语句3并不会被执行 

        2.break

                直接结束所在的整个循环
                for循环与while循环都可以用
                【注意】:break关键字只控制他所在的循环


        对于嵌套循环,continue和break都只作用在所在的循环上,无法对上层循环起作用

for i in range(1,3):
    print("语句1")
    for j in range(1,3):
        print("语句2")
        break
        print("语句3")
    print("语句4")

         break语句在内层的for循环,所以当运行完语句2后,会直接中断内层的for循环,执行语句4,再进行下一次外层的for循环,语句3并不会被执行 

        3.发工资小练习

money = 10000
import random

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值