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

news2024/11/28 2:45:25

目录

🥩循环语句是什么

🥩while循环

🥩遍历猜数字

🥩while循环嵌套

🥩while循环嵌套案例


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

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

循环语句是什么

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

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

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

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

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

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

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

while循环

注意事项:

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

  2. 空格缩进不能忘。

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

while 条件:
    条件满足时,做的事情1
    条件满足时,做的事情1
    条件满足时,做的事情1
    ...

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

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

输入内容如下:

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

输出结果如下:

你好0
你好1
你好2
你好3
...

黑马练习题

输入结果如下:

z = 0
i = 1
while i <= 100:
    z += i
    i += 1
print(z)

输出结果如下:

5050

遍历猜数字

输入内容如下:

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

输出结果如下:

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

while循环嵌套

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

循环嵌套语法如下:

while 条件1:
    条件1满足,做的事情1
    条件2满足,做的事情2
    ...
    
    while 条件2:
        条件2满足,做的事情1
        条件2满足,做的事情2
        ...

黑马案例:

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

输入内容如下:

# 外层循环: 表白100天
# 内层循环: 每天送10只玫瑰花

i = 1
while i <= 100:
    print(f"今天是第{i}天")

    # 内层循环
    z = 1
    while z <= 10:
        print(f"送给小美第{z}只玫瑰花")
        z += 1

    print("小美,我喜欢你")
    i += 1
print(f"坚持到第{i - 1}天,表白成功")

输出结果如下:

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

while循环嵌套案例

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

输入内容如下:

print("hello",end="")
print("world",end = "")

输出结果如下:

helloworld

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

输入内容如下:

print("hello\tworld")
print("test\tworld")

输出内容如下:

hello   world
test    world

案例如下:

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

输入内容如下:

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

输出内容如下:

1 * 1 = 1   
1 * 2 = 2   2 * 2 = 4   
1 * 3 = 3   2 * 3 = 6   3 * 3 = 9   
1 * 4 = 4   2 * 4 = 8   3 * 4 = 12  4 * 4 = 16  
1 * 5 = 5   2 * 5 = 10  3 * 5 = 15  4 * 5 = 20  5 * 5 = 25  
1 * 6 = 6   2 * 6 = 12  3 * 6 = 18  4 * 6 = 24  5 * 6 = 30  6 * 6 = 36  
1 * 7 = 7   2 * 7 = 14  3 * 7 = 21  4 * 7 = 28  5 * 7 = 35  6 * 7 = 42  7 * 7 = 49  
1 * 8 = 8   2 * 8 = 16  3 * 8 = 24  4 * 8 = 32  5 * 8 = 40  6 * 8 = 48  7 * 8 = 56  8 * 8 = 64  
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  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/780017.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【N32L40X】学习笔记11-ADC规则通道采集+dma数据传输

ADC规则通道转换 概述 支持 1 个 ADC&#xff0c;支持单端输入和差分输入&#xff0c;最多可测量 16 个外部和 3 个内部源。支持 12 位、10 位、8 位、6 位分辨率。ADC 时钟源分为工作时钟源、采样时钟源和计时时钟源 仅可配置 AHB_CLK 作为工作时钟源。可配置 PLL 作为采样时…

【安全】Sqllabs(1-4) 多种情况浅析

目录 环境⭐ 先要 ⭐⭐⭐⭐⭐ Less - 1 (information_shcema) Less - 2 (假设没有information_schema) Less - 3 (无列名注入) Less - 4 环境⭐ MySQL8.0.12 Nginx1.15.11 先要 ⭐⭐⭐⭐⭐ MySQL5.0以上有这几个数据库mysql, sys&#xff0c;information_schema informa…

前端性能优化——图片优化

一、图片优化措施 优化图片是 Web 前端优化的重要一环&#xff0c;因为图片是 Web 页面中最耗费带宽和加载时间的资源之一。以下是一些通过优化图片来优化 Web 前端的方法&#xff1a; 压缩图片&#xff1a;压缩图片可以减少图片的文件大小&#xff0c;从而减少加载时间。 使…

【数学建模】相关是一个距离指标吗?

一、说明 本文探讨最平凡的数学模型--距离模型。我们知道&#xff0c;任何数学模型如果是个距离模型&#xff0c;那么它是&#xff1a;放心的、自动的、不加任意条件的指标项目。然而另一些度量参数不是距离空间&#xff0c;因此&#xff0c;使用起来必须外加若干条件&#xff…

苹果iOS 16.6 RC发布:或为iPhone X/8系列养老版本

今天苹果向iPhone用户推送了iOS 16.6 RC更新(内部版本号&#xff1a;20G75)&#xff0c;这是时隔两个月的首次更新。 按照惯例RC版基本不会有什么问题&#xff0c;会在最近一段时间内直接变成正式版&#xff0c;向所有用户推送。 需要注意的是&#xff0c;鉴于iOS 17正式版即将…

【CN-Docker】window11下Docker下开启kubernetes

1. 安装Docker 安装docker步骤如下&#xff1a; 下载Docker启用hyper-v 2.1.powershell&#xff0c;管理员运行Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All安装wsl配置Docker镜像加速地址(阿里云) 4.1. "registry-mirrors": [&quo…

Qt/C++音视频开发48-推流到rtsp服务器

一、前言 之前已经打通了rtmp的推流&#xff0c;理论上按照同样的代码&#xff0c;只要将rtmp推流地址换成rtsp推流地址&#xff0c;然后格式将flv换成rtsp就行&#xff0c;无奈直接遇到协议不支持的错误提示&#xff0c;网上说要换成rtp&#xff0c;换了也没用&#xff0c;而…

C++之mutable关键字实例(一百六十五)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

【C++链表】

目录 前言一、搭建链表实现的框架二、链表的构造函数三、链表的尾插四、链表的遍历(重点)迭代器的遍历const修饰的迭代器 五、代码实现 前言 最近用C写了一下list的基本功能&#xff0c;感触颇深。本以为会跟之前用C写list一样会很轻松&#xff0c;没想到更难了。要考虑的东西…

【数据结构】C--单链表(小白入门基础知识)

前段时间写了一篇关于顺序表的博客&#xff0c;http://t.csdn.cn/0gCRp 顺序表在某些时候存在着一些不可避免的缺点: 问题&#xff1a; 1. 中间 / 头部的插入删除&#xff0c;时间复杂度为 O(N) 2. 增容需要申请新空间&#xff0c;拷贝数据&#xff0c;释放旧空间。会有不…

第110天:免杀对抗-GOC#反VT沙盒逆向调试参数加载资源分离混淆加密

知识点 #知识点&#xff1a; 1、C#-混淆&分离&反调试 2、GO-混淆&分离&反调试 3、成品程序-包含反调试VT#章节点&#xff1a; 编译代码面-ShellCode-混淆 编译代码面-编辑执行器-编写 编译代码面-分离加载器-编写 程序文件面-特征码定位-修改 程序文件面-加壳…

Progressive Dual-Branch Network for Low-Light Image Enhancement 论文阅读笔记

这是22年中科院2区期刊的一篇有监督暗图增强的论文 网络结构如下图所示&#xff1a; ARM模块如下图所示&#xff1a; CAB模块如下图所示&#xff1a; LKA模块其实就是放进去了一些大卷积核&#xff1a; AFB模块如下图所示&#xff1a; 这些网络结构没什么特别的&#xf…

【团队协作开发】将Gitee项目导入到本地IDEA中出现根目录不完整的问题解决(已解决)

前言&#xff1a;在团队协作开发过程中&#xff0c;通常我们的Gitee完整项目中会包含很多内容&#xff1a;后端代码、前端代码、项目结构图、项目文档等一系列资产。 将Gitee项目导入到本地IDEA中&#xff0c;通常会出现根目录不完整的问题。这是因为项目里面包含了后端代码、前…

Matlab的GUI设计

文章目录 AppDesigner各个版本的特点mlapp文件基本格式AppDesigner的回调函数常见控件的属性MVC模式MVC模式设计GUIMVC简单使用 其他让app designer置顶将Guide的GUI导出为m文件将app编译为exe将app中的多个控件组合在一起 AppDesigner 20200328 各个版本的特点 在2017b版本中…

用 Node.js 手写 WebSocket 协议

目录 引言 从 http 到 websocekt 的切换 Sec-WebSocket-Key 与 Sec-WebSocket-Accept 全新的二进制协议 自己实现一个 websocket 服务器 按照协议格式解析收到的Buffer 取出opcode 取出MASK与payload长度 根据mask key读取数据 根据类型处理数据 frame 帧 数据的发…

【C++模拟实现】string的模拟实现

【C模拟实现】string的模拟实现 目录 【C模拟实现】string的模拟实现string模拟实现的标准代码string模拟实现中的要点string构造函数的实现赋值运算符重载迭代器的实现对流插入和流提取运算符的重载find函数的实现insert函数的实现 作者&#xff1a;爱写代码的刚子 时间&#…

MySQL视图概念及作用、操作语法

1.什么是视图 在数据库中有一些用户的敏感数据字段不方便展示&#xff0c;需要隐藏时&#xff0c;这时候就可以利用视图这个概念来实现。 2.视图操作 如何对视图里的数据进行增删改操作呢&#xff1f; 可以直接通过insert语句向视图里面插入数据&#xff0c;语法和向表里插…

移动测试(二)

功能测试点 用户使用习惯 权限问题 硬件问题 比如双卡双待、摄像头、GPU等。 操作习惯 用户常用的有菜单键、Home键、返回键、Home键长按&#xff08;显示当前进程列表&#xff09;、调整音量、待机等。相应的作为测试工程师我们需要考虑的项就变成了&#xff1a; • 应用中的…

Docker——基本管理

Docker 基本管理 Docker——基本管理 一、Docker 概述1.Docker的设计理念2.容器的优势3.Docker与虚拟机的区别4.容器在内核中支持2种重要技术5.Docker核心概念5.1 镜像5.2 容器5.3 仓库 二、安装 Docker1.关机防火墙2.安装依赖包3.设置阿里云镜像源4.安装 Docker-CE并设置为开…

PostgreSQL 的事务管理和并发控制机制解析

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…