Python条件语句与循环语句详解:编程进阶的必经之路

目录

一、条件语句:程序的决策引擎

(一)if 语句:简单决策

(二)if – else 语句:二选一的决策

(三)if – elif – else 语句:多分支决策

(四)三目运算符:简洁的条件表达式

二、循环语句:程序的重复执行者

(一)while 循环:满足条件就循环

(二)for 循环:遍历序列的利器

(三)循环嵌套:构建复杂逻辑

(四)break 和 continue:灵活控制循环

三、思维导图

四、总结与实战建议

  在 Python 编程的世界里,条件语句和循环语句是构建程序逻辑的重要基石。它们赋予程序决策能力和重复执行任务的能力,让代码变得更加灵活和强大。对于 Python 初学者来说,深入理解并熟练运用这两种语句是迈向编程高手的关键一步。今天,就让我们一起深入探讨 Python 中的条件语句和循环语句,通过丰富的示例代码,带你快速掌握它们的使用技巧。

一、条件语句:程序的决策引擎

(一)if 语句:简单决策

  if语句是条件语句中最基本的形式,它根据条件的真假来决定是否执行特定的代码块。语法格式如下: 

if 条件:
    条件成立执行的代码

  例如,在判断一个数是否大于 10 时,可以这样写

num = 15
if num > 10:
    print(f'{num}大于10')

  当num的值为 15 时,条件num > 10成立,因此会执行print语句,输出 “15 大于 10”。这里需要注意,if语句后面的条件表达式必须是一个可以判断真假的表达式,比如比较运算、逻辑运算等。而且,条件成立时执行的代码块需要缩进,通常使用 4 个空格或 1 个制表符,这是 Python 语法的严格要求,它用于区分代码块的层次结构。

(二)if – else 语句:二选一的决策

  if - else语句在if语句的基础上增加了一个else分支,当if条件不成立时,会执行else后面的代码块。语法如下:

if 条件:
    条件成立执行的代码
else:
    条件不成立执行的代码

   以判断年龄是否达到法定成年年龄为例:

age = 16
if age >= 18:
    print(f'您的年龄是{age},可以上网')
else:
    print(f'您的年龄是{age},小屁孩,回家写作业去')

  当age为 16 时,age >= 18条件不成立,程序会执行else分支的代码,输出 “您的年龄是 16, 小屁孩,回家写作业去”。在实际应用中,if - else语句常用于处理两种不同情况的场景,比如判断用户输入是否合法、文件是否存在等。

(三)if – elif – else 语句:多分支决策

  在实际编程中,往往需要根据多个条件进行不同的处理,这时就可以使用if - elif - else语句。elif是 “else if” 的缩写,用于添加额外的条件判断。语法如下:

if 条件1:
    条件1成立执行的代码
elif 条件2:
    条件2成立执行的代码
else:
    以上条件都不成立执行的代码

  比如在猜拳游戏中判断输赢:

import random
player = int(input('请出拳:0--石头;1--剪刀;2--布:'))
computer = random.randint(0, 2)
if ((player == 0) and (computer == 2)) or ((player == 1) and (computer == 0)) or ((player == 2) and (computer == 1)):
    print('玩家获胜,哈哈哈哈')
elif player == computer:
    print('平局,别走,再来一次')
else:
    print('电脑获胜')

  在这个例子中,程序会根据玩家和电脑出拳的不同情况,执行不同的代码块来判断游戏结果。if - elif - else语句可以有多个elif分支,根据条件的先后顺序依次判断,只要有一个条件成立,就会执行对应的代码块,然后跳出整个条件判断结构。

(四)三目运算符:简洁的条件表达式

  三目运算符是一种简洁的条件判断表达方式,它可以在一行代码中完成条件判断和赋值操作。语法如下:

条件成立执行的表达式 if 条件 else 条件不成立执行的表达式

二、循环语句:程序的重复执行者

(一)while 循环:满足条件就循环

  while循环用于在条件为真时,重复执行一段代码块。语法如下:

while 条件:
    条件成立重复执行的代码1
    条件成立重复执行的代码2

    计算 1 到 100 的累加和是while循环的经典应用:

i = 1
result = 0
while i <= 100:
    result = result + i
    i = i + 1
print(result)

  在这段代码中,初始化变量i为 1,result为 0。每次循环时,将i加到result中,然后i自增 1。当i大于 100 时,条件i <= 100不成立,循环结束,最后输出累加和。在使用while循环时,一定要注意条件的设置,避免出现死循环。比如,如果忘记在循环体中增加i的值,i始终小于等于 100,循环就会一直进行下去,导致程序卡死。

(二)for 循环:遍历序列的利器

  for循环主要用于遍历序列(如列表、元组、字符串等)中的每个元素,并对每个元素执行相同的操作。语法如下:

for 临时变量 in 序列:
    重复执行代码1
    重复执行代码2

  以遍历字符串为例:

str1 = 'itheima'
for i in str1:
    print(i)

  上述代码会依次输出字符串'itheima'中的每个字符。在for循环中,临时变量会依次取序列中的每个值,执行循环体中的代码。for循环的优点在于简洁明了,能够方便地对序列中的元素进行处理。它还可以和range()函数结合使用,生成一个指定范围的数字序列,用于循环指定的次数。例如:

for i in range(1, 11):
    print(i)

  这段代码会输出 1 到 10 的数字。range(1, 11)生成的序列是从 1 开始(包含 1),到 11 结束(不包含 11)。

(三)循环嵌套:构建复杂逻辑

  循环嵌套是指在一个循环体内再包含另一个循环。在while循环和for循环中都可以使用循环嵌套。例如,使用for循环打印九九乘法表:

for j in range(1, 10):
    for i in range(1, j + 1):
        print(f'{i}*{j}={i * j}', end='\t')
    print()

  在这个例子中,外层for循环控制行数,内层for循环控制每行的表达式个数。每次外层循环执行时,内层循环会完整地执行一遍,打印出一行乘法表达式。循环嵌套在处理二维数据(如矩阵)、图形绘制等场景中经常用到,但要注意嵌套的层数不宜过多,否则会导致代码可读性变差和性能下降 。

(四)break 和 continue:灵活控制循环

1.break 语句break语句用于在循环过程中,当满足某个条件时,立即跳出整个循环。例如,在吃苹果的场景中,如果吃到第 4 个苹果时吃饱了:

i = 1
while i <= 5:
    if i == 4:
        print('吃饱了,不吃了')
        break
    print(f'吃了第{i}个苹果')
    i = i + 1

  当i等于 4 时,执行break语句,跳出while循环,不再执行后续的循环代码。break语句在需要提前结束循环的场景中非常有用,比如在查找某个元素时,一旦找到就可以使用break跳出循环,提高程序效率。
2.continue 语句continue语句用于跳过当前循环的剩余代码,直接进入下一次循环。还是以吃苹果为例,如果吃到第 3 个苹果时吃出一个大虫子:

i = 1
while i <= 5:
    if i == 3:
        print('吃出一个大虫子,这个苹果不吃了')
        i = i + 1
        continue
    print(f'吃了第{i}个苹果')
    i = i + 1

  当i等于 3 时,执行continue语句,跳过本次循环中剩余的print(f'吃了第{i}个苹果')代码,直接进入下一次循环,i自增 1 后继续循环。使用continue时要注意,在continue之前一定要修改计数器,否则可能会导致死循环。比如,如果在上述代码中忘记i = i + 1,当i等于 3 时,每次循环都会执行continuei始终为 3,就会陷入死循环。

三、思维导图

循环思维导图

条件语句

四、总结与实战建议

  条件语句和循环语句是 Python 编程中不可或缺的部分,它们为程序赋予了逻辑判断和重复执行的能力。通过合理运用这两种语句,可以解决各种复杂的编程问题。在实际编程中,建议大家多进行练习,尝试用不同的方式解决同一个问题,加深对条件语句和循环语句的理解。比如,在处理数据时,可以使用条件语句筛选出符合特定条件的数据,再用循环语句对这些数据进行进一步的处理。同时,要注意代码的可读性和规范性,合理使用缩进和注释,让代码更加清晰易懂。希望大家通过不断的学习和实践,能够熟练掌握 Python 的条件语句和循环语句,在编程的道路上越走越远!

作者:柒的小船

物联沃分享整理
物联沃-IOTWORD物联网 » Python条件语句与循环语句详解:编程进阶的必经之路

发表回复