[Python] Python的顺序结构和循环结构

527 0
Honkers 2025-3-5 16:45:53 | 显示全部楼层 |阅读模式


一、条件语句

(1)条件语句的定义

条件语句能够表达 “如果 … 否则 …” 这样的语义. 这构成了计算机中基础的 逻辑判定。
条件语句 也叫做 分支语句, 表示了接下来的逻辑可能有几种走向。

(2)条件语句的语法

(a)单分支 if

  1. if expression:
  2. do_something1
  3. do_something2
  4. next_something
复制代码

如果 expression 值为 True, 则执行 do_something1, do_something2,next_something;
如果 expression 值为 False, 则只执行 next_something, 不执行do_something1, do_something2。

(b)双分支 if-else

  1. if expression:
  2. do_something1
  3. else:
  4. do_something2
复制代码

如果 expression 值为 True, 则执行 do_something1;
如果 expression 值为 False, 则执行 do_something2。

(c)多分支 if-elif-elif-…-else

  1. if expression1:
  2. do_something1
  3. elif expression2:
  4. do_something2
  5. else:
  6. do_something3
复制代码

如果 expression1 值为 True, 则执行 do_something1;
如果 expression1 值为 False, 并且 expression2 为 True 则执行 do_something2;
如果 expression1 值为 False, 并且 expression2 为 False 则执行 do_something3。

(3)注意事项

  • if 后面的条件表达式, 没有 ( ), 使用 :(英文状态下的冒号) 作为结尾.
  • if / else 命中条件后要执行的 “语句块”, 使用 缩进 (通常是 4 个空格或者 1 个 tab)来表示, 而不是 { }
  • 对于多条件分支, 不是写作 else if, 而是 elif (合体了).

(4)空语句 pass

输入一个数字, 如果数字为 1, 则打印 hello

  1. # 提示用户输入一个整数,并使用int()函数将输入的字符串转换为整数
  2. a = int(input("请输入一个整数:"))
  3. # 使用if语句判断输入的整数是否等于1
  4. if a == 1:
  5. # 如果输入的整数等于1,打印消息"hello"
  6. print("hello")
复制代码

这个代码也可以等价写成

  1. # 提示用户输入一个整数,并使用int()函数将输入的字符串转换为整数
  2. a = int(input("请输入一个整数:"))
  3. # 使用if-else语句判断输入的整数是否不等于1
  4. if a != 1:
  5. # 如果输入的整数不等于1,使用pass语句,表示什么也不做
  6. pass
  7. else:
  8. # 如果输入的整数等于1,打印消息"hello"
  9. print("hello")
复制代码

其中 pass 表示 空语句, 并不会对程序的执行有任何影响, 只是占个位置, 保持 Python 语法格式符合要求。

(5)示例

  1. # 输入 1 表示愿意认真学习, 输入 2 表示躺平摆烂
  2. choice = input("输入 1 表示认真学习, 输入 2 表示躺平摆烂: ")
  3. if choice == "1":
  4. print("你会找到好工作!")
  5. elif choice == "2":
  6. print("你可能毕业就失业了!")
  7. else:
  8. print("你的输入有误!")
复制代码

二、循环语句

(1)循环语句的定义

在Python中,循环语句是用来重复执行一段代码多次的一种控制流结构。最常用的是for循环和while循环。

(2) while 循环

(a) 语法

  1. while 条件:
  2. 循环体
复制代码
  • 条件为真, 则执行循环体代码.
  • 条件为假, 则结束循环

(b)示例

计算 1-100 的和

  1. # 初始化变量,用于存储累加的总和
  2. theSum = 0
  3. # 初始化变量,用于表示当前的数字,从1开始
  4. num = 1
  5. # 使用while循环,当num小于或等于100时,继续执行循环
  6. while num <= 100:
  7. # 将当前的num值加到theSum中,实现累加
  8. theSum += num
  9. # 将num的值加1,准备下一次循环
  10. num += 1
  11. # 循环结束后,打印最终累加的结果
  12. print(f'theSum = {theSum}')
复制代码

运行截图:

求 1! + 2! + 3! + 4! + 5!

  1. # 初始化变量num,从1开始,表示当前要计算阶乘的数字
  2. num = 1
  3. # 初始化变量sum,用于存储累加的阶乘结果
  4. sum = 0
  5. # 外层while循环:当num小于或等于5时,继续执行循环
  6. while num <= 5:
  7. # 初始化变量factorResult,用于存储当前数字num的阶乘结果
  8. factorResult = 1
  9. # 初始化变量i,用于计算阶乘时的循环控制
  10. i = 1
  11. # 内层while循环:计算当前数字num的阶乘
  12. while i <= num:
  13. # 将i的值乘到factorResult中,逐步计算阶乘
  14. factorResult *= i
  15. # 将i的值加1,准备下一次循环
  16. i += 1
  17. # 将计算得到的阶乘结果factorResult累加到sum中
  18. sum += factorResult
  19. # 将num的值加1,准备计算下一个数字的阶乘
  20. num += 1
  21. # 在所有计算完成后,打印最终的sum值
  22. print(sum)
复制代码

(3) range 函数

(a) 语法

  1. range(start, stop, step)
复制代码

参数说明:

  • start: 计数从 start 开始。默认是从 0 开始。例如 range(5) 等价于range(0,5);
  • stop: 计数到 stop 结束,但不包括 stop。例如:range(0,5) 是 [0, 1, 2, 3, 4] 没有5。
  • step:步长,默认为1。例如:range(0,5) 等价于 range(0, 5, 1)。

(b)示例

  1. range(10) # 从 0 开始到 9
  2. [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  3. range(1, 11) # 从 1 开始到 10
  4. [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  5. range(0, 30, 5) # 步长为 5
  6. [0, 5, 10, 15, 20, 25]
  7. range(0, 10, 3) # 步长为 3
  8. [0, 3, 6, 9]
  9. range(0, -10, -1) # 负数
  10. [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
复制代码

(4) for 循环

(a) 语法

  1. for 循环变量 in 可迭代对象:
  2. 循环体
复制代码

注意:

所谓的 “可迭代对象”, 指的是 “内部包含多个元素, 能一个一个把元素取出来的特殊变量”。

(b)示例

打印 2, 4, 6, 8, 10

  1. for i in range(2, 12, 2):
  2. print(i)
复制代码

运行截图:

(5)continue语句

continue 表示结束这次循环,进入下次循环。

示例

  1. # 使用for循环遍历从1到5的数字(不包括6)
  2. for i in range(1, 6):
  3. # 在循环中,检查当前的数字i是否等于3
  4. if i == 3:
  5. # 如果i等于3,使用continue语句跳过当前循环的剩余部分,直接进入下一次循环
  6. continue
  7. # 如果i不等于3,打印当前的数字i,并附带一条消息
  8. print(f"吃完第{i}个包子")
复制代码

运行截图:

(6)break语句

break 表示结束整个循环。

示例

  1. # 使用for循环遍历从1到5的数字(不包括6)
  2. for i in range(1, 6):
  3. # 在循环中,检查当前的数字i是否等于3
  4. if i == 3:
  5. # 如果i等于3,使用break语句提前终止循环
  6. break
  7. # 如果i不等于3,打印当前的数字i,并附带一条消息
  8. print(f"吃完第{i}个包子")
复制代码

运行截图:


END

每天都在学习的路上!
On The Way Of Learning

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Honkers

荣誉红客

关注
  • 4008
    主题
  • 36
    粉丝
  • 0
    关注
这家伙很懒,什么都没留下!

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2025 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行