Python编程第六讲:循环结构与函数入门,告别重复的艺术!378
---
哈喽,各位编程小白们,老司机们,大家好!欢迎来到【Python编程第六讲】!是不是已经觉得Python的基础知识越来越有趣了?恭喜你们,因为今天我们要学习的,是编程世界中自动化和模块化的两大基石:循环结构和函数。它们能让你的代码告别重复劳动,变得更加简洁、强大和易于管理。
一、循环的魅力:重复的力量
想象一下,如果你需要打印100次“我爱Python”,你会怎么做?复制粘贴100次吗?那样效率太低了!这时,循环结构就派上用场了。Python提供了两种主要的循环结构:`for`循环和`while`循环。
1.1 `for` 循环:遍历一切可迭代对象
`for`循环主要用于遍历(iterate)序列(如列表、元组、字符串)或其他可迭代对象中的元素。它会依次访问序列中的每个项目,并为每个项目执行一次代码块。
基本语法:for 变量 in 可迭代对象:
# 循环体代码块
# 每次循环,变量都会被赋值为可迭代对象中的下一个元素
示例1:遍历列表fruits = ["苹果", "香蕉", "橙子"]
print("我喜欢的水果有:")
for fruit in fruits:
print(fruit)
# 输出:
# 我喜欢的水果有:
# 苹果
# 香蕉
# 橙子
示例2:遍历字符串my_string = "Python"
print("遍历字符串:")
for char in my_string:
print(char)
# 输出:
# 遍历字符串:
# P
# y
# t
# h
# o
# n
`range()` 函数:生成数字序列
在实际编程中,我们经常需要循环固定次数。`range()`函数是一个非常方便的内置函数,可以生成一个数字序列,非常适合与`for`循环结合使用。
`range(stop)`:生成从0到`stop-1`的整数序列。
`range(start, stop)`:生成从`start`到`stop-1`的整数序列。
`range(start, stop, step)`:生成从`start`到`stop-1`,步长为`step`的整数序列。
示例3:使用`range()`循环固定次数print("打印10次“我爱Python”:")
for i in range(10): # 从0到9,共10次
print(f"{i+1}. 我爱Python!")
# 输出:
# 打印10次“我爱Python”:
# 1. 我爱Python!
# 2. 我爱Python!
# ...
# 10. 我爱Python!
示例4:带步长的`range()`print("打印1到10之间的奇数:")
for num in range(1, 11, 2): # 从1开始,到10结束,步长为2
print(num)
# 输出:
# 打印1到10之间的奇数:
# 1
# 3
# 5
# 7
# 9
1.2 `while` 循环:条件达成,周而复始
`while`循环在给定条件为真时重复执行代码块。只要条件保持为真,循环就会一直运行。因此,在使用`while`循环时,一定要确保循环条件最终会变为假,否则就会陷入死循环。
基本语法:while 条件:
# 循环体代码块
# 确保在循环体内部有改变条件的代码,使其最终变为假
示例5:简单的计数器count = 0
print("while 循环计数:")
while count < 5:
print(f"当前计数:{count}")
count += 1 # 每次循环count加1,最终会使条件变为假
print("while 循环结束。")
# 输出:
# while 循环计数:
# 当前计数:0
# 当前计数:1
# 当前计数:2
# 当前计数:3
# 当前计数:4
# while 循环结束。
示例6:用户输入循环password = ""
while password != "123456":
password = input("请输入密码:")
if password == "123456":
print("密码正确,欢迎进入!")
else:
print("密码错误,请重新输入。")
# 运行示例:
# 请输入密码:wrong
# 密码错误,请重新输入。
# 请输入密码:123456
# 密码正确,欢迎进入!
1.3 `break` 与 `continue`:掌控循环节奏
在循环执行过程中,我们可能需要更精细地控制循环的流程,`break`和`continue`就是实现这种控制的利器。
`break`:立即终止当前所在的整个循环(无论是`for`循环还是`while`循环),并跳出循环体,执行循环后面的代码。
`continue`:立即跳过当前循环的剩余代码,进入下一次循环的判断或迭代。
示例7:使用`break`提前退出循环for i in range(10):
if i == 5:
print("遇到5了,提前退出循环!")
break
print(i)
# 输出:
# 0
# 1
# 2
# 3
# 4
# 遇到5了,提前退出循环!
示例8:使用`continue`跳过当前迭代for i in range(10):
if i % 2 == 0: # 如果是偶数
print(f"跳过偶数 {i}")
continue # 跳过当前循环的剩余部分,直接进入下一个i的迭代
print(f"打印奇数 {i}")
# 输出:
# 跳过偶数 0
# 打印奇数 1
# 跳过偶数 2
# 打印奇数 3
# 跳过偶数 4
# 打印奇数 5
# 跳过偶数 6
# 打印奇数 7
# 跳过偶数 8
# 打印奇数 9
二、函数的艺术:模块化与复用
当你的程序越来越复杂时,你会发现有些代码片段需要反复使用,或者某个功能块的代码量很大,难以阅读。这时,函数就成为了你的救星!函数是组织好的、可重复使用的代码块,用于执行单一的、相关的操作。
2.1 为什么我们需要函数?
主要有以下几点:
代码复用: 避免重复编写相同的代码(DRY原则:Don't Repeat Yourself)。
模块化: 将大程序分解成小的、可管理的功能块,提高代码的可读性和可维护性。
提高效率: 一旦函数定义好,就可以在程序的任何地方多次调用。
便于调试: 如果某个功能出现问题,只需检查对应的函数即可。
2.2 定义你的第一个函数
在Python中,使用`def`关键字来定义函数。定义函数后,你可以通过函数名加括号来调用它。
基本语法:def 函数名(参数列表):
"""
文档字符串(可选):描述函数的功能
"""
# 函数体代码块
# ...
return 返回值 # 可选
`def`:用于定义函数的关键字。
`函数名`:遵循变量命名规则,通常小写,用下划线分隔单词。
`参数列表`:括号`()`中可以包含零个或多个参数(也叫形式参数),用于接收调用函数时传入的数据。
`:`:函数头必须以冒号结束。
`文档字符串`:可选,用于解释函数的功能、参数和返回值。良好的编程习惯是为每个函数编写文档字符串。
`函数体`:缩进的代码块,包含了函数执行的语句。
`return 返回值`:可选。用于将函数处理的结果返回给调用者。如果没有`return`语句,函数会隐式返回`None`。
示例9:一个没有参数和返回值的简单函数def say_hello():
"""
这个函数用于打印一句问候语。
"""
print("你好,欢迎学习Python编程!")
# 调用函数
say_hello()
say_hello()
# 输出:
# 你好,欢迎学习Python编程!
# 你好,欢迎学习Python编程!
2.3 函数的参数与返回值
函数最大的魅力在于它可以通过参数接收外部数据,并通过返回值将处理结果反馈给调用者。
示例10:带参数的函数def greet(name):
"""
这个函数接收一个名字作为参数,并打印个性化的问候语。
"""
print(f"你好,{name}!很高兴认识你。")
# 调用函数并传入参数
greet("张三")
greet("李四")
# 输出:
# 你好,张三!很高兴认识你。
# 你好,李四!很高兴认识你。
示例11:带返回值且有参数的函数def add(a, b):
"""
这个函数接收两个数字作为参数,计算它们的和,并返回结果。
"""
result = a + b
return result # 返回计算结果
# 调用函数并获取返回值
sum1 = add(5, 3)
print(f"5 + 3 = {sum1}")
sum2 = add(100, 200)
print(f"100 + 200 = {sum2}")
# 输出:
# 5 + 3 = 8
# 100 + 200 = 300
函数的参数可以是任意Python数据类型。返回值的类型也同样灵活,可以是数字、字符串、列表、元组,甚至是另一个函数!
三、总结与展望
恭喜你,完成了【Python编程第六讲】的学习!今天我们掌握了:
循环结构: `for`循环用于遍历可迭代对象,`while`循环用于基于条件重复执行。
循环控制: `break`用于提前终止循环,`continue`用于跳过当前循环的剩余部分。
函数入门: 学习了如何使用`def`关键字定义函数,了解了参数和返回值的概念,以及函数在代码复用和模块化方面的重要性。
循环和函数是构建任何复杂程序的基石。它们大大提高了代码的效率、可读性和可维护性。从现在开始,你的代码将不再是简单的指令序列,而是具备了重复执行能力和模块化思想的“智能”程序!
下一讲,我们将深入探讨函数的更多高级用法,比如不同类型的参数、作用域以及匿名函数等,让你的Python技能更上一层楼!
作业:
编写一个`for`循环,计算并打印1到100之间所有整数的和。
编写一个`while`循环,模拟一个简单的猜数字游戏:程序随机生成一个1到100的整数,让用户猜测,直到猜对为止,并提示用户猜大了还是猜小了。
定义一个函数,名为`is_prime(number)`,接收一个整数作为参数,判断该整数是否为素数(只能被1和自身整除的数,1除外),并返回`True`或`False`。
别忘了动手实践,有任何疑问都可以在评论区留言,我会尽力为大家解答!我们下期再见!
2026-04-01
Perl 类型系统深度解析:动态、弱类型、上下文与灵活性的平衡之道
https://jb123.cn/perl/73175.html
Perl文本智能换行完全指南:打造优雅的自动排版效果
https://jb123.cn/perl/73174.html
Python编程第六讲:循环结构与函数入门,告别重复的艺术!
https://jb123.cn/python/73173.html
JavaScript Cookie时间管理深度解析:从生命周期到实战技巧与安全策略
https://jb123.cn/javascript/73172.html
Perl实战:高效移除HTML Table标签与表格数据处理全攻略
https://jb123.cn/perl/73171.html
热门文章
Python 编程解密:从谜团到清晰
https://jb123.cn/python/24279.html
Python编程深圳:初学者入门指南
https://jb123.cn/python/24225.html
Python 编程终端:让开发者畅所欲为的指令中心
https://jb123.cn/python/22225.html
Python 编程专业指南:踏上编程之路的全面指南
https://jb123.cn/python/20671.html
Python 面向对象编程学习宝典,PDF 免费下载
https://jb123.cn/python/3929.html