【Python中`for`循环和`while`循环详细介绍及其用法。】

循环结构是编程中用来重复执行一段代码的重要工具。在Python中,主要的循环结构有for循环和while循环。以下是对这两种循环结构的详细介绍及其用法。

1. for 循环

for 循环用于遍历一个序列(如列表、元组、字符串)或其他可迭代对象。

基本语法
python 复制代码
for item in iterable:
    # 执行代码块
示例
python 复制代码
# 遍历列表
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)
python 复制代码
# 遍历字符串
for letter in "Python":
    print(letter)
python 复制代码
# 使用range()函数遍历一系列数字
for i in range(5):  # range(5)生成0到4的数字
    print(i)

2. while 循环

while 循环在给定条件为真时反复执行代码块。

基本语法
python 复制代码
while condition:
    # 执行代码块
示例
python 复制代码
count = 0
while count < 5:
    print(count)
    count += 1

3. 循环控制语句

break 语句

break 语句用于提前终止循环。

python 复制代码
for i in range(10):
    if i == 5:
        break
    print(i)
continue 语句

continue 语句用于跳过本次循环剩余的代码,直接进入下一次循环。

python 复制代码
for i in range(10):
    if i % 2 == 0:
        continue
    print(i)

4. 嵌套循环

循环可以嵌套,即在一个循环内部再使用另一个循环。

示例
python 复制代码
for i in range(3):
    for j in range(3):
        print(f"i = {i}, j = {j}")

5. else 子句

循环还可以带有else子句,当循环正常结束时(即没有遇到break),会执行else子句中的代码。

示例
python 复制代码
for i in range(5):
    print(i)
else:
    print("循环结束")
python 复制代码
for i in range(5):
    if i == 3:
        break
    print(i)
else:
    print("循环结束")

实践案例:求一个列表中的所有数字之和

使用 for 循环
python 复制代码
numbers = [1, 2, 3, 4, 5]
total = 0

for number in numbers:
    total += number

print(f"总和是: {total}")
使用 while 循环
python 复制代码
numbers = [1, 2, 3, 4, 5]
total = 0
index = 0

while index < len(numbers):
    total += numbers[index]
    index += 1

print(f"总和是: {total}")

实践案例:寻找质数

一个数如果只能被1和它本身整除,那么它就是质数。下面的代码使用循环结构来找出一定范围内的质数。

python 复制代码
start = 10
end = 50

print(f"{start}到{end}之间的质数有:")

for num in range(start, end + 1):
    if num > 1:
        for i in range(2, num):
            if num % i == 0:
                break
        else:
            print(num)

总结

循环结构是编程中的基础工具,掌握for循环和while循环及其控制语句breakcontinue的用法,可以帮助你高效地处理重复性任务。通过不断练习和应用这些概念,你会逐渐熟悉和灵活运用循环结构来解决各种编程问题。

相关推荐
WJX_KOI1 小时前
Open Notebook 一个开源的结合AI的记笔记软件
python
喜欢吃燃面2 小时前
Linux:环境变量
linux·开发语言·学习
0思必得02 小时前
[Web自动化] 反爬虫
前端·爬虫·python·selenium·自动化
徐徐同学2 小时前
cpolar为IT-Tools 解锁公网访问,远程开发再也不卡壳
java·开发语言·分布式
LawrenceLan2 小时前
Flutter 零基础入门(二十六):StatefulWidget 与状态更新 setState
开发语言·前端·flutter·dart
2301_822382762 小时前
Python上下文管理器(with语句)的原理与实践
jvm·数据库·python
m0_748229992 小时前
Laravel8.X核心功能全解析
开发语言·数据库·php
喵手3 小时前
Python爬虫实战:从零搭建字体库爬虫 - requests+lxml 实战采集字体网字体信息数据(附 CSV 导出)!
爬虫·python·爬虫实战·零基础python爬虫教学·csv导出·采集字体库数据·字体库字体信息采集
qq_192779873 小时前
C++模块化编程指南
开发语言·c++·算法
2301_790300963 小时前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python