• 一文了解Python中的while循环语句


    目录

    🥩循环语句是什么

    🥩while循环

    🥩遍历猜数字

    🥩while循环嵌套

    🥩while循环嵌套案例


         🦐博客主页:大虾好吃吗的博客

         🦐专栏地址:Python从入门到精通专栏

    循环语句是什么

            循环语句在编程中非常有用,可以帮助我们重复执行特定的代码块,从而实现一些重复性的任务。循环语句的主要作用如下:

    1. 遍历数据:循环语句可以用来遍历数据结构中的元素,例如列表、元组、字符串等。通过循环可以逐个访问集合中的元素并进行相应的处理。

    2. 执行重复操作:有时候我们需要反复执行相同的操作,这时循环语句能够方便地实现。通过循环控制代码块的重复执行,可以减少代码的冗余性。

    3. 控制流程:循环语句可以帮助我们控制程序的流程。根据特定条件来判断是否继续执行循环或退出循环,可以根据需要灵活地控制程序的行为。

    4. 实现计数器:循环语句经常与计数器变量结合使用,可以追踪循环的次数或当前的进展。通过计数器,我们可以统计符合特定条件的元素个数,或者在满足某一条件前一直循环执行。

    5. 实现嵌套循环:循环语句支持嵌套使用,可以在一个循环内部再放置另一个循环。这样可以更灵活地处理复杂的问题,例如处理二维数据结构或实现复杂的模式。

            循环语句可以帮助我们处理重复性任务,提供了一种有效的方式来遍历数据、重复操作、控制流程和实现嵌套循环。通过合理运用循环语句,我们能够更加高效地编写代码并实现复杂的功能。

    while循环

    注意事项:

    1. 条件必须提供布尔类型结果,True无限循环,False条件循环。

    2. 空格缩进不能忘。

    3. 规划好循环终止条件,否则将无限循环。

    1. while 条件:
    2. 条件满足时,做的事情1
    3. 条件满足时,做的事情1
    4. 条件满足时,做的事情1
    5. ...

            只要条件满足,会无限循环执行下去。

    示例:打印你好0~100(i += 1表示每次循环加一;等效于i=i+1)

    输入内容如下:

    1. i = 0
    2. while i < 100:
    3.   print("你好%.0f" % i)
    4.   i += 1

    输出结果如下:

    1. 你好0
    2. 你好1
    3. 你好2
    4. 你好3
    5. ...

    黑马练习题

    输入结果如下:

    1. z = 0
    2. i = 1
    3. while i <= 100:
    4.   z += i
    5.   i += 1
    6. print(z)

    输出结果如下:

    5050

    遍历猜数字

    输入内容如下:

    1. # 获取1-100的随机数字
    2. import random
    3. num = random.randint(1,100)
    4. # 定义猜测次数
    5. count = 0
    6. # 定义一个布尔类型的变量,决定循环是否继续
    7. flag = True
    8. while flag:
    9.   num1 = int(input("请输入您猜测的数字:"))
    10.   count += 1
    11.   if num1 == num:
    12.       print("恭喜您猜中了")
    13.       # 设置False为终止条件
    14.       flag = False
    15.   else:
    16.       if num1 > num:
    17.           print("数值过大")
    18.       else:
    19.           print("数值过小")
    20. print(f"您总共猜测了{count}次")

    输出结果如下:

    1. 请输入您猜测的数字:50
    2. 数值过小
    3. 请输入您猜测的数字:60
    4. 恭喜您猜中了
    5. 您总共猜测了2次

    while循环嵌套

            下面是语法格式,需要注意空格缩进来确定层次关系,注意条件的控制,避免无限循环。循环条件的控制,层次越多越复杂,需要耐心及细心。

    循环嵌套语法如下:

    1. while 条件1:
    2. 条件1满足,做的事情1
    3. 条件2满足,做的事情2
    4. ...
    5. while 条件2:
    6. 条件2满足,做的事情1
    7. 条件2满足,做的事情2
    8. ...

    黑马案例:

    向小美表白100天,每天送10多玫瑰花。

    输入内容如下:

    1. # 外层循环: 表白100天
    2. # 内层循环: 每天送10只玫瑰花
    3. i = 1
    4. while i <= 100:
    5. print(f"今天是第{i}天")
    6. # 内层循环
    7. z = 1
    8. while z <= 10:
    9. print(f"送给小美第{z}只玫瑰花")
    10. z += 1
    11. print("小美,我喜欢你")
    12. i += 1
    13. print(f"坚持到第{i - 1}天,表白成功")

    输出结果如下:

    1. #省略部分内容
    2. 小美,我喜欢你
    3. 今天是第100天
    4. 送给小美第1只玫瑰花
    5. 送给小美第2只玫瑰花
    6. 送给小美第3只玫瑰花
    7. 送给小美第4只玫瑰花
    8. 送给小美第5只玫瑰花
    9. 送给小美第6只玫瑰花
    10. 送给小美第7只玫瑰花
    11. 送给小美第8只玫瑰花
    12. 送给小美第9只玫瑰花
    13. 送给小美第10只玫瑰花
    14. 小美,我喜欢你
    15. 坚持到第100天,表白成功
    16. 进程已结束,退出代码0

    while循环嵌套案例

    1、当使用print输出多行语句时,会自动换行,如果打印多行且不换行时可以使用end=""。

    输入内容如下:

    1. print("hello",end="")
    2. print("world",end = "")

    输出结果如下:

    helloworld

    2、当打印多行字符串时,默认打印出来的字符串不对齐,如果需要对其添加 制表符 \t 即可。

    输入内容如下:

    1. print("hello\tworld")
    2. print("test\tworld")

    输出内容如下:

    1. hello world
    2. test world

    案例如下:

    通过while循环,输出九九乘法表内容。

    输入内容如下:

    1. # 打印九九乘法表
    2. i = 1
    3. while i <= 9:
    4.   # 定义内层循环控制变量
    5.   z = 1
    6.   while z <= i:
    7.       # 内层循环print语句,不换行,对齐
    8.       print(f"{z} * {i} = {z * i }\t",end='')
    9.       z += 1
    10.   i += 1
    11.   print()     # 输出一个空内容表示换行

    输出内容如下:

    1. 1 * 1 = 1
    2. 1 * 2 = 2 2 * 2 = 4
    3. 1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
    4. 1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
    5. 1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
    6. 1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
    7. 1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
    8. 1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
    9. 1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81
  • 相关阅读:
    TiDB Dashboard 实例性能分析 - 手动分析页面
    Linux | 一篇文章带你深刻理解粘滞位
    记一次用dataframe进行数据清理
    Java核心技术面试题(附答案),纯手码,赶紧带走冲刺10月秋招
    Docker全解
    大型连锁百货运维审计用什么软件好?有哪些功能?
    Acwing.885 求组合数l
    软件测试岗月薪3w+的测试,到底强在哪里?测试开发真的就是天花板了吗?
    2309d用dmd重写dfmt
    拜托,我也不想跪着的,但这份redis深度笔记也太牛了
  • 原文地址:https://blog.csdn.net/qq_61116007/article/details/131876090