辞掉月薪3000的工作那天,我只写了7行Python代码,从入门到精通 第五节 while循环

发布时间:2026/7/16 3:19:38

辞掉月薪3000的工作那天,我只写了7行Python代码,从入门到精通 第五节 while循环
上一节我们学习了for循环它特别适合用来遍历序列或者已知循环次数的场景。但在编程中还有很多时候我们不知道具体要循环多少次只知道当某个条件满足时就一直循环这时候就需要用到while循环了。1、什么是while循环while循环是Python中最基础的循环结构之一它的核心逻辑很简单只要条件为真就反复执行代码块。和for循环的区别for循环“把这些元素挨个过一遍” → 知道循环次数while循环“只要条件还成立就一直做” → 不知道具体循环次数while循环的基本语法while条件表达式:# 条件成立时重复执行的代码块# 注意缩进执行流程先判断条件表达式是True还是False如果是True就执行里面的代码块执行完代码块后回去再判断一次条件如果还是True继续执行…直到条件变成False循环结束最简单的例子打印1到5count1whilecount5:print(count)countcount1# 一定要让条件有变成False的时候# 输出# 1# 2# 3# 4# 52、while循环的常见用法1让程序一直运行直到用户输入退出这是while循环最经典的使用场景——做交互式程序。print(欢迎使用计算器输入q退出)whileTrue:# True永远是真这是一个无限循环user_inputinput(请输入数字)ifuser_inputq:print(程序退出)break# 用break跳出循环numint(user_input)print(f{num}的平方是{num*num})运行效果欢迎使用计算器输入q退出 请输入数字5 5的平方是25 请输入数字10 10的平方是100 请输入数字q 程序退出2计算累加和计算123…100的和sum_result0i1whilei100:sum_resultsum_resulti ii1print(f1到100的和是{sum_result})# 输出1到100的和是50503、break在while循环中的用法和for循环一样while循环里也可以用break和continue来控制循环流程。break立刻结束整个循环i0whilei10:ii1ifi5:break# 当i等于5时直接结束整个循环print(i)# 输出# 1# 2# 3# 4# 5之后的数字都不会打印了4、while…else 结构和for循环一样while循环也可以带else块。else里的代码只有当循环正常结束没有被break打断时才会执行。i1whilei3:print(i)ii1else:print(循环正常结束了)# 输出# 1# 2# 3# 循环正常结束了如果循环被break打断了else就不会执行i1whilei3:print(i)ifi2:breakii1else:print(循环正常结束了)# ❌ 这行不会执行# 输出# 1# 2这个特性有什么用呢最常见的用法就是找了一圈没找到的判断# 找第一个大于10且能被7整除的数n11whilen20:ifn%70:print(f找到了{n})breaknn1else:print(11到20之间没有能被7整除的数)5、while循环嵌套while循环也可以嵌套使用最经典的例子就是打印九九乘法表i1whilei9:j1whileji:print(f{j}×{i}{i*j}\t,end)jj1print()# 换行ii1输出就是标准的九九乘法表1×11 1×22 2×24 1×33 2×36 3×39 ...一个简单的判断标准如果你能在循环开始前就算出这个循环要执行多少次就用for否则就用while。

相关新闻

VSCode 多光标与批量编辑:从基础操作到实战提效

VSCode 多光标与批量编辑:从基础操作到实战提效

2026/7/16 3:09:38

1. 多光标编辑:从零开始的效率革命第一次在VSCode里看到同事同时修改十几行代码时,我盯着屏幕上闪烁的多个光标足足愣了五秒——这简直像科幻电影里的场景。多光标编辑作为现代代码编辑器的标配功能,本质上允许你在多个位置同步输入或修改内容…

Product Hunt 每日热榜 | 2026-07-14

Product Hunt 每日热榜 | 2026-07-14

2026/7/16 3:09:38

1. AgentKey 标语:为您的代理提供一站式实时数据市场 介绍:AgentKey 是一个插件,只需一个命令就能将你的代理与实时外部数据连接起来。你只需将它安装到 Claude Code、Codex、OpenClaw 或任何基于 MCP 的代理上,立刻就能访问搜索…

【Linux】网络篇三--UDP编程实战:从sendto/recvfrom到可靠传输模拟

【Linux】网络篇三--UDP编程实战:从sendto/recvfrom到可靠传输模拟

2026/7/16 3:09:38

1. UDP编程基础与核心函数解析第一次接触UDP编程时,我被它"发了就不管"的特性震惊了。作为无连接协议的代表,UDP就像寄平信——把信件投进邮筒后,你无法确定对方是否能收到。但这恰恰是它的优势所在,在视频会议、在线游…

路,饮食饮水代谢检测系统 小动物代谢监测系统 小动物代谢检测系统

路,饮食饮水代谢检测系统 小动物代谢监测系统 小动物代谢检测系统

2026/7/16 4:39:42

实时记录动物进食、饮水、自主活动、能量代谢相关数据,食槽结构可防止饲料洒落、粪便混入,多通道持续监测。安徽,正华生物,露。适用于药理药效、毒理、动物营养、肥胖与能量代谢、心血管病症、转基因动物等方向科研实验。技术参数…

游戏AI系统设计:从行为树到Boss战,打造智能敌人

游戏AI系统设计:从行为树到Boss战,打造智能敌人

2026/7/16 4:39:42

1. 项目概述:从“木桩”到“棋手”的进化在动作角色扮演游戏(ARPG)的开发中,敌人AI系统的好坏,直接决定了玩家战斗体验的“魂”。一个只会站桩攻击的Boss,和一个会预判、会走位、会协同、甚至会“演戏”的B…

C++中基于std::sort与OpenCV实现MATLAB风格矩阵排序

C++中基于std::sort与OpenCV实现MATLAB风格矩阵排序

2026/7/16 4:39:42

1. 项目概述:为什么要在C里复刻MATLAB的排序?在计算机视觉和图像处理领域,我们经常需要处理大量的数据点,比如特征点、像素坐标、检测框的置信度等等。这些数据通常以矩阵或向量的形式存在,而排序是其中最基础也最频繁…

华为OD机试高频题:API日志去重与聚合统计的Python/JS实现

华为OD机试高频题:API日志去重与聚合统计的Python/JS实现

2026/7/16 4:39:42

1. 项目概述与核心需求拆解最近在帮几个准备华为OD机试的朋友做模拟练习,发现“API请求日志去重分析”这个题目出现的频率相当高,尤其是在新系统的机试真题里。这题乍一看是个简单的字符串处理,但实际做下来,你会发现它完美地考察…

AUTOSAR NvM切页:为什么Flash数据不是直接覆盖?一文搞懂NvM切页(Page Switching)原理

AUTOSAR NvM切页:为什么Flash数据不是直接覆盖?一文搞懂NvM切页(Page Switching)原理

2026/7/16 4:39:42

前言很多工程师第一次分析AUTOSAR NvM底层存储时,会产生一个疑问:NvM Block明明只有几十Byte,为什么底层Flash却设计得这么复杂?为什么写一次NvM数据,不是简单地找到原地址,然后擦除、重新写入?…

GPT-5.6 Sol模型推理优化与API使用额度调整详解

GPT-5.6 Sol模型推理优化与API使用额度调整详解

2026/7/16 4:29:42

这次我们来看OpenAI最新发布的GPT-5.6系列模型,特别是其中的GPT-5.6 Sol版本。OpenAI在上周正式向所有用户开放了GPT-5.6系列的全部三款模型,包括GPT-5.6 Sol、GPT-5.6 Terra和GPT-5.6 Luna。模型上线后,OpenAI根据首批用户的反馈进行了多项重…

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

2026/7/16 0:35:09

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator作为Unity游戏社区中最成熟的文本翻译解决方…

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

2026/7/13 20:43:19

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持 【免费下载链接】raspberrypi-kernel It provides openEuler kernel source for Raspberry Pi 项目地址: https://gitcode.com/openeuler/raspberrypi-kernel 前往项目官网免费下载&…

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

2026/7/15 0:26:43

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧 【免费下载链接】integration-test The repo contains test suits for system integration test 项目地址: https://gitcode.com/openeuler/integration-test 前往项目官网免费下载:…

Python实现跨境电商商品图批量翻译教程

Python实现跨境电商商品图批量翻译教程

2026/7/16 0:09:31

一、问题引入做跨境电商的卖家朋友,你是否遇到过这样的困扰?每次上架新品到亚马逊、Shopee或Lazada等平台,都需要处理大量商品图片的多语言版本。比如上架200款衣服,每款需要翻译成英语、日语、韩语等5种语言,这意味着…

跨境电商多语言商品图翻译方案实现

跨境电商多语言商品图翻译方案实现

2026/7/16 0:09:31

一、问题引入对于做跨境电商的卖家来说,多语言商品图的制作一直是令人头疼的环节。当你准备在亚马逊、Shopee、Lazada等多个平台同步上架新品时,首先遇到的就是图片翻译问题。以一位做家居用品的卖家为例,他需要将200张商品图片中的英文文案全…

Windows系统文件d3dx9_36.dll丢失找不到问题解决

Windows系统文件d3dx9_36.dll丢失找不到问题解决

2026/7/16 0:09:31

在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…