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

Python基础教程:控制流与函数入门 - 第4-6天

Python基础教程:控制流与函数入门 - 第4-6天

在这里插入图片描述

关键要点

  • 控制流的核心作用:条件语句和循环使程序能够根据条件做出决策并重复执行任务。
  • 函数的重要性:函数帮助组织代码,提高可读性和可维护性,是编写复杂程序的基础。
  • 适合初学者:本教程通过简单示例和比喻,适合零基础学习者掌握Python控制流和函数。
  • 后续学习:下一主题将介绍数据结构,帮助更高效地处理数据。

简介

在编程中,控制流和函数是构建动态程序的基石。控制流允许程序根据输入或状态选择执行路径或重复执行任务,而函数则将代码组织成可重用的模块,使程序更清晰、更易于维护。本教程将通过三天的学习计划,详细讲解Python中的条件语句、循环和函数,适合初学者。通过代码示例和直观的比喻,您将快速掌握这些核心概念。
在这里插入图片描述

第4天:条件语句

条件语句简介

条件语句让程序根据特定条件执行不同的代码块。在Python中,if语句是最常用的控制流工具,通过布尔表达式(值为TrueFalse)决定执行路径。布尔表达式可以包含比较运算符(如>, <, ==, !=)和逻辑运算符(如and, or, not)。

语法

Python的条件语句包括以下形式:

  • 基本if语句
if 条件:# 条件为真时执行
  • if-else语句
if 条件:# 条件为真时执行
else:# 条件为假时执行
  • if-elif-else语句
if 条件1:# 条件1为真时执行
elif 条件2:# 条件1为假且条件2为真时执行
else:# 所有条件为假时执行

执行流程

条件语句的执行流程如下:

  1. 评估条件(布尔表达式)。
  2. 如果条件为True,执行if块代码,然后跳过后续分支。
  3. 如果条件为False,检查elif条件(若有),或执行else块(若有)。
  4. 继续执行后续代码。

流程描述

  • 开始
  • 评估条件
  • 若条件为真,执行if块,然后结束
  • 若条件为假,检查elif或执行else块,然后结束
  • 结束

在这里插入图片描述

代码示例

以下示例展示条件语句的实际应用:

示例1:检查数字奇偶性

number = 10
if number % 2 == 0:print("偶数")
else:print("奇数")

输出:偶数

示例2:根据分数确定等级

score = 85
if score >= 90:print("A")
elif score >= 80:print("B")
elif score >= 70:print("C")
else:print("D")

输出:B

示例3:判断闰年
闰年的规则是:年份能被4整除但不能被100整除,或能被400整除。

year = 2024
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):print("闰年")
else:print("非闰年")

输出:闰年

常见问题

  • 缩进错误:Python使用缩进来定义代码块,if语句后的代码必须缩进(通常4个空格)。
  • 使用=代替===是赋值运算符,==是比较运算符。使用if x = 5会导致语法错误。

练习

  1. 编写程序,检查输入的年龄是否允许投票(>=18)。
  2. 创建一个程序,根据输入的温度(摄氏度)输出“冷”(<10)、“适中”(10-25)或“热”(>25)。

第5天:循环语句

循环简介

循环允许程序重复执行代码块,适合处理重复任务。Python提供两种循环:for循环和while循环。

for循环

for循环用于遍历序列(如列表、元组、字符串)或通过range()生成数值序列,适合已知迭代次数的场景。

语法

for 元素 in 序列:# 代码

执行流程

  1. 从序列中获取第一个元素,赋值给循环变量。
  2. 执行循环体。
  3. 获取下一个元素,重复直到序列结束。

示例1:遍历列表

fruits = ["苹果", "香蕉", "樱桃"]
for fruit in fruits:print(fruit)

输出:

苹果
香蕉
樱桃

示例2:使用range()

for i in range(0, 10, 2):print(i)  # 打印偶数0到8

输出:

0
2
4
6
8

说明range(start, stop, step)生成从startstop-1的序列,步长为step

while循环

while循环在条件为真时持续执行,适合未知迭代次数的场景。

语法

while 条件:# 代码

执行流程

  1. 评估条件。
  2. 如果条件为True,执行循环体,然后重新评估条件。
  3. 如果条件为False,退出循环。

[此处插入while循环流程图:矩形“开始”连接到菱形“条件为真?”,若“是”指向“执行循环体”再回到菱形,若“否”指向“结束”]

示例1:打印1到5

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

输出:

1
2
3
4
5

示例2:猜数字游戏

number = 7
guess = 0
while guess != number:guess = int(input("猜一个数字: "))if guess < number:print("太低了")elif guess > number:print("太高了")
print("正确!")

for与while的对比

特性for循环while循环
用途遍历已知序列或固定次数条件驱动,未知迭代次数
语法for x in seq:while condition:
风险较少出现无限循环需确保条件最终为假
示例场景遍历列表、字符串等待用户输入

控制循环

  • break:提前退出循环。
  • continue:跳过当前迭代,继续下一次。
    示例
for i in range(10):if i == 5:break  # 退出循环if i % 2 == 0:continue  # 跳过偶数print(i)  # 打印1, 3

常见问题

  • 无限循环:在while循环中,若条件始终为真(如忘记更新循环变量),程序将无限运行。
  • 缩进错误:循环体必须正确缩进。

练习

  1. 使用for循环计算1到100的和。
  2. 编写while循环,打印10到1的倒计数。

第6天:函数

函数简介

函数是一段命名的代码块,执行特定任务,可通过参数接收输入并返回结果。函数提高代码的模块化、可读性和可维护性。

定义与调用

定义语法

def 函数名(参数):# 代码return# 可选

调用

函数名(参数)

比喻:函数就像烹饪食谱,包含名称、输入(食材)和步骤,输出结果(菜肴)。例如,制作蛋糕的食谱需要面粉和糖(参数),按照步骤混合烘焙(代码),最终得到蛋糕(返回值)。

执行流程

  1. 调用函数,传递参数。
  2. 执行函数体。
  3. 返回结果(若有)并继续程序。

[此处插入函数流程图:矩形“调用函数”连接到“执行函数体”,再到“返回结果”,最后到“继续程序”]

代码示例

示例1:计算两数之和

def add(a, b):return a + b
result = add(3, 5)
print(result)  # 输出: 8

示例2:默认参数

def greet(name="世界"):print(f"你好,{name}!")
greet()  # 输出: 你好,世界!
greet("Alice")  # 输出: 你好,Alice!

示例3:返回多个值

def calculate(a, b):sum = a + bdiff = a - breturn sum, diff
s, d = calculate(10, 5)
print(s)  # 15
print(d)  # 5

示例4:函数调用其他函数

def greet(name):return f"你好,{name}!"
def ask_name():name = input("你叫什么名字? ")return name
def main():name = ask_name()message = greet(name)print(message)
main()

参数类型

  • 位置参数:按顺序传递,如add(3, 5)
  • 关键字参数:指定参数名,如add(b=5, a=3)
  • 默认参数:提供默认值,如greet(name="世界")
  • 可变参数(高级,初学者可稍后学习):
    def sum_all(*args):return sum(args)
    print(sum_all(1, 2, 3))  # 输出: 6
    

最佳实践

  • 命名清晰:函数名应描述其功能,如calculate_area而非ca
  • 单一职责:每个函数应专注于单一任务。
  • 注释文档:为复杂函数添加文档字符串:
    def add(a, b):"""返回两个数的和"""return a + b
    

练习

  1. 编写函数,计算矩形的面积(长×宽)。
  2. 创建函数,判断输入的数字是否为素数。
    在这里插入图片描述

结语

控制流和函数是Python编程的核心。条件语句和循环使程序能够动态响应不同情况,函数则通过模块化提高代码效率和可维护性。掌握这些概念后,您将能够编写更复杂和实用的程序。下一部分将介绍数据结构(如列表、字典的深入用法),帮助您更高效地管理数据。

为了加深理解,建议尝试以下练习:

  1. 编写一个程序,判断输入的数字是正数、负数还是零。
  2. 使用for循环计算1到100的和。
  3. 创建一个函数,计算矩形的面积并返回结果。

关键引用

  • Python Official Documentation: Control Flow
  • Python Official Documentation: Defining Functions

未觉池塘春草梦,阶前梧叶已秋声。

在这里插入图片描述
学习是通往智慧高峰的阶梯,努力是成功的基石。
我在求知路上不懈探索,将点滴感悟与收获都记在博客里。
要是我的博客能触动您,盼您 点个赞、留个言,再关注一下。
您的支持是我前进的动力,愿您的点赞为您带来好运,愿您生活常暖、快乐常伴!
希望您常来看看,我是 秋声,与您一同成长。
秋声敬上,期待再会!

相关文章:

  • 【网络入侵检测】基于Suricata源码分析FlowWorker实现
  • 智能仓储落地:机器人如何通过自动化减少仓库操作失误?
  • DeepSeek - 尝试一下GitHub Models中的DeepSeek
  • EasyRTC音视频实时通话助力微信小程序:打造低延迟、高可靠的VoIP端到端呼叫解决方案
  • 【ConvLSTM第二期】模拟视频帧的时序建模(Python代码实现)
  • Text-to-SQL评估体系:从Spider 1.0数据集到2.0框架的跨越与革新
  • HOW - 简历和求职面试宝典(八)
  • 【春秋云镜】CVE-2022-26965 靶场writeup
  • 江西某石灰石矿边坡自动化监测
  • 【Hive 运维实战】一键管理 Hive 服务:Metastore 与 HiveServer2 控制脚本开发与实践
  • LeetCode Hot100(多维动态规划)
  • 基于vue框架的独居老人上门护理小程序的设计r322q(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 前端面试核心考点全解析
  • 华为OD机试真题——告警抑制(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
  • .NET 开源工业视觉系统 OpenIVS 快速搭建自动化检测平台
  • ST-GCN
  • 表单请求为什么需要进行 URL 编码?—详解application/x-www-form-urlencoded的正确用法
  • 自动化立体仓库堆垛机SRM控制系统FC19手动控制功能块开发
  • 制造业的未来图景:超自动化与劳动力转型的双重革命
  • 数据结构(7)树-二叉树-堆
  • 什么网站专门做批发/搭建自己的网站
  • 做网站上海的备案地址/百度移动应用
  • 网站怎么做根目录/百度一下官方网站
  • 做网站怎么投放广告/营销网页
  • 网站公安备号/神马关键词快速排名软件
  • 做网站找外包公司要要搞清楚什么/seo在线培训机构