[TOC]
流程控制
if语句
- if语句是一种条件语句,用于根据某些条件执行代码块,基本语法如下:
基本语法
if 条件: 执行代码块 - 条件是一个可以求值为True或False的表达式。如果条件的值为True,则执行if语句下面的代码块;如果条件的值为False,则跳过if语句下面的代码块,继续执行代码的下一个语句
if...elif
- elif语句用于在满足多个条件时执行不同的代码块,而else语句则用于在所有条件都不满足时执行特定的代码块
基本语法
if 条件1: 执行代码块1 elif 条件2: 执行代码块2 else: 执行代码块3 - 如果条件1为True,则执行代码块1;如果条件1为False但条件2为True,则执行代码块2;如果条件1和条件2都为False,则执行代码块3
- elif语句中的条件必须是互斥的
示例
# 定义一个变量 my_variable = 10 # 使用 if...elif 语句判断变量的值 if my_variable > 0: print("Positive number") elif my_variable == 0: print("Zero") elif my_variable < 0: print("Negative number")先定义了一个变量my_variable,然后使用if...elif语句判断它的值。 如果变量的值大于0,则输出“Positivenumber”; * 如果变量的值等于0,则输出“Zero”;如果变量的值小于0,则输出“Negative number”
While循环
- while循环允许你重复执行一段代码,直到某个条件不再满足为止
基本语法
while 条件: # 执行的代码块 - 条件是一个逻辑表达式,如果它是 True,则执行代码块;如果它是 False,则跳过代码块,循环结束
示例
a = 1 while a < 10: print(a) i += 1 - 动图演示如何运行
*
break
- break语句可以用来提前终止循环
- 当break语句被执行时,循环立即结束,程序继续执行循环后面的代码
- break只能终止当前循环,而不能终止外层循环和函数
示例
i = 1 while i <= 10: if i == 5: break print(i) i += 1* break语句在 i 等于5时被执行,导致循环立即结束。因此,程序只打印了从1到4的数字。
continue
- continue语句可以用来跳过当前循环的剩余部分,直接进入下一次循环
- 当continue语句被执行时,循环会立即跳转到下一次循环的开始,而不是继续执行当前循环的剩余代码
示例
i = 1 while i <= 10: if i == 5: continue print(i) i += 1* continue语句在 i 等于5时被执行,导致程序跳过打印5的操作,直接进入下一次循环。因此,程序只打印了从1到4和6到10的数字
while 循环使用 else 语句
- else语句在循环正常结束时执行,即当循环的条件不再满足时执行
- 如果循环因为使用了break语句而提前终止,则不会执行else语句
示例
i = 1 while i <= 10: print(i) i += 1 else: print("循环正常结束")* else语句在循环正常结束时执行,即当 i 的值大于10时执行。因此程序会打印1-10和 "循环正常结束"。
for循环
- 遍历循环,允许你遍历序列(如列表、元组、字符串等)中的每个元素,并执行一些操作
- for循环也可以使用break和continue
基本语法
for 变量 in 序列: # 执行的代码块* 变量是一个临时变量,它在每次循环中被赋值为序列中的下一个元素。序列可以是列表、元组、字符串等任何可迭代的对象 示例
sites = ["Baidu", "Google", "Biying", "Sougou"] for site in sites: print(site)* for循环遍历列表 sites,并将每个元素赋值给变量 site。然后,它打印出每个元素:Baidu、Google、Biying、Sougou
for循环初始化变量为0
- 在循环开始前初始化一个变量并将其值设置为0,这样做通常是为了累积计算或计数的目的
- 初始化变量为0允许你在循环过程中逐步更新该变量的值,比如累加、计数
示例
numbers = [1, 2, 3, 4, 5] total = 0 # 初始化total为0 for num in numbers: total += num # 累加每个元素到total中 print(total) # 输出: 15* total变量被初始化为0,然后在每次迭代中,当前的num值被加到total上,最终,total包含了列表中所有数字的总和。
- 初始化为0的原因:
1.避免未定义的行为:如果不初始化变量,尤其是在函数内部,可能会导致使用默认的None值进行数学运算,这会导致运行时错误
2.简化逻辑:从0开始累积确保了累积过程的正确性,无论你的数据集是否包含任何值,最终的结果都是准确的。
* 3.可读性和清晰性:明确地初始化变量可以使代码更易于理解,尤其是对于其他阅读代码的人。
for 循环使用 else 语句
示例
sites = ["Baidu", "Google", "Biying", "Sougou"] for site in sites: if site == "Biying": print("必应搜索") break print(f"循环数据 {site}" ) else: print("没有循环数据!") print("完成循环!")* 循环过程中遇到break终止循环,else语句跳过。打印出:循环数据 Baidu、循环数据 Google、必应搜索、完成循环!
range()函数
- 如果你需要遍历数字序列,可以使用内置 range() 函数
语法
range(start, stop, step)tart表示序列的起始值,默认为0 stop表示序列的结束值(不包括) * tep表示序列中每个元素之间的步长,默认为1 示例1
for i in range(5): print(i)* range(5)生成了一个从0到4的数字序列,5是结束值,打印出每个元素:0-4 示例2
for i in range(1, 11): print(i)* range(1, 11)生成了一个从1到10的数字序列,然后for循环遍历这个序列并打印出每个元素:1-10 示例3
for i in range(0, 10, 2): print(i)* rang(10,2)生成了一个从0到10并且步长为2的数字序列,然后for循环遍历这个序列并打印出每个元素:0-2-4-6-8
while循环和for循环使用场景判断
选择while循环场景
- while循环的执行次数不是固定的,而是由循环条件决定的
- 当你需要根据某个条件动态确定循环次数时,while循环是更好的选
选择for循环场景
- for循环的执行次数是固定的,因为它基于序列的长度来确定循环次数
- 当你需要遍历列表、元组、字符串等序列中的每个元素时,for循环是更好的选择
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://www.qian777.cn/71.html
共有 0 条评论