当前位置: 首页 > java >正文

第2期:控制流程语句详解(条件判断与循环)

2.1 什么是控制流程?

程序的控制流程指的是代码执行的顺序。在没有控制语句的情况下,Python程序是从上往下逐行执行的。借助条件判断(if语句)和循环(forwhile)语句,我们可以让程序:

  • 有选择地执行某些代码(条件判断)

  • 重复执行某些代码(循环)

2.2 条件判断语句(if, elif, else

Python中的条件判断语句用于根据条件执行不同的代码块。基本结构如下:

if 条件:代码块1
elif 其他条件:代码块2
else:代码块3

示例 1:判断年龄是否成年

age = int(input("请输入你的年龄:"))
if age >= 18:print("你是成年人。")
else:print("你是未成年人。")

 示例 2:多条件判断

score = int(input("请输入你的分数:"))if score >= 90:print("优秀")
elif score >= 70:print("良好")
elif score >= 60:print("及格")
else:print("不及格")
注意事项:
  • ifelifelse 后面必须接冒号(:

  • 条件语句下的代码块必须 缩进一致,通常是4个空格或一个Tab

2.3 比较运算符和逻辑运算符

➤ 比较运算符:
运算符含义示例 (x = 5, y = 3)
==等于x == y → False
!=不等于x != y → True
>大于x > y → True
<小于x < y → False
>=大于等于x >= y → True
<=小于等于x <= y → False

逻辑运算符:

运算符含义示例
and与(都为True时为True)True and False → False
or或(有一个True则为True)True or False → True
not非(取反)not True → False

2.4 while 循环语句

while 循环用于在条件为真时反复执行一段代码。

while 条件:代码块

 示例:打印1到5

i = 1
while i <= 5:print(i)i += 1

 

2.5 for 循环语句

for 循环常用于遍历一个序列(如字符串、列表、range对象等)。

for 变量 in 序列:代码块

示例:打印1到5

for i in range(1, 6):print(i)
range() 函数详解:
  • range(n):0 到 n-1

  • range(a, b):a 到 b-1

  • range(a, b, step):从a到b-1,步长为step

2.6 breakcontinue

  • break:跳出整个循环

  • continue:跳过当前循环,继续下一次

示例:遇到3就停止

for i in range(1, 6):if i == 3:breakprint(i)  # 输出 1 2

示例:遇到3就跳过

for i in range(1, 6):if i == 3:continueprint(i)  # 输出 1 2 4 5

2.7 小练习:动手试一试

  1. 判断一个数是正数、负数还是零。

  2. 编写一个程序,求 1~100 的偶数和。

  3. 编写一个程序,输入密码,最多输入三次,正确则输出欢迎,错误三次则拒绝访问。

本期我们学习了Python中重要的控制结构:

  • 条件判断:if/elif/else

  • 比较运算符和逻辑运算符

  • 循环语句:whilefor

  • 控制循环流程的 breakcontinue

这些知识是编写程序逻辑的基础,掌握它们后,你就能实现更复杂的逻辑控制了!

预告第3期

下一期我们将深入讲解:

  • Python中的常见数据结构(列表、元组、字典、集合)

  • 如何使用这些结构高效存储和管理数据

http://www.xdnf.cn/news/382.html

相关文章:

  • 基于Python Django 的全国房价大数据可视化系统(附源码,部署)
  • 【深度学习】【目标检测】【Ultralytics-YOLO系列】YOLOV3核心文件common.py解读
  • 演讲比赛流程管理项目c++
  • 从裸仓库到GitLab全解析
  • 8、表单控制:预言水晶球——React 19 复杂表单处理
  • 每日OJ_牛客_kotori和素因子_DFS_C++_Java
  • 毕业答辩的PPT应该包括哪些内容?
  • XCZU27DR‑2FFVE1156I Xilinx Zynq UltraScale+ RFSoC
  • 【实战】在 Linux 上使用 Nginx 部署 Python Flask 应用
  • Android 热点二维码简单示例
  • 09-DevOps-Jenkins实现CI持续集成
  • MCP 应用案例-网络设备批量管理
  • 混合精度训练中的算力浪费分析:FP16/FP8/BF16的隐藏成本
  • Sentinel源码—5.FlowSlot借鉴Guava的限流算法一
  • leetcode 300. Longest Increasing Subsequence
  • Ethan独立开发产品日报 | 2025-04-18
  • Gradle与Idea整合
  • 【Android面试八股文】Android系统架构【一】
  • x-ui重新申请ssl证书失败
  • VSCode安装与环境配置(Mac环境)
  • 智能语音备忘录:SpeechRecognition与gTTS的奇妙融合
  • 桌面应用UI开发方案
  • 【Redis】从单机架构到分布式,回溯架构的成长设计美学
  • 数据结构——快排和归并排序(非递归)
  • arkTs:使用setTimeout / setInterval 实现透明度切换的轮播图
  • 【论文阅读20】-CNN-Attention-BiGRU-滑坡预测(2025-03)
  • 【Linux】深入理解Linux文件系统:从C接口到内核设计哲学
  • InternVL 3的技术深度分析,代码与原理
  • uboot下读取ubifs分区的方法
  • 树莓派超全系列教程文档--(31)config.txt常用选项介绍