1. 分支结构

1. 1 单分支

if语句
image.png

  1. #示例:猜数字
  2. guess= eval(input())
  3. if guess == 99:
  4. print("猜对了")

1.2 二分支

if…+else 语句
image.png

  1. #示例:猜数字
  2. guess=eval(input())
  3. if guess == 99:
  4. print("猜对了")
  5. else:
  6. print("猜错了")

紧凑形式,适用于简单表达式的二分支结构
<表达式1> if <条件> else <表达式2>

  1. #示例:猜数字
  2. guess = eval(input())
  3. print("猜{}了".format("对" if guess==99 else "错"))

1.3 多分枝结构

if … + elif … + else
image.png

2.条件判断及组合

2.1 条件判断

操作符 对应数学符号 描述
< < 小于
<= 小于等于
>= 大于等于
> > 大于
== = 等于
!= 不等于

2.2 用于条件组合的保留字

操作符 描述
x and y 两个条件 x 和 y 逻辑 与
x or y 两个条件 x 和 y 的逻辑 或
not x 条件x 的逻辑 非
  1. #示例:猜数字
  2. guess=eval(input())
  3. if guess > 99 or guess < 99 :
  4. print("猜错了")
  5. else:
  6. print("猜对了")

3. 程序的异常处理

3.1 try… + except 语句

image.png

  1. 1.示例,捕获异常
  2. try :
  3. num = eval(input("请输入一个整数"))
  4. print("这个数的2倍是:",num**2)
  5. except :
  6. print("输入的不是整数")
  7. 2.示例,捕获指定异常类型
  8. try :
  9. num = eval(input("请输入一个整数"))
  10. print("这个数的2倍是:",num**2)
  11. except NameError: #标注异常类型后,仅响应此类异常; 异常类型名字等同于变量名
  12. print("输入的不是整数")
  13. 3.万能异常
  14. try:
  15. <语句>
  16. except Exception:
  17. print('异常说明')

3.2 高级使用

try… + except… + else… + finally:
image.png

  1. 1. 异常中的else,判断完没有某些异常后,执行else下的语句
  2. try:
  3. <语句>
  4. except <异常名1>:
  5. print('异常说明1')
  6. except <异常名2>:
  7. print('异常说明2')
  8. else:
  9. <语句> # try语句中没有异常则执行此段代码
  10. 2. 异常中的finally,无论是否发生异常,都将执行最后的finally下的语句
  11. try:
  12. <语句>
  13. finally:
  14. <语句>

4. 循环结构

4.1 遍历循环

for <循环变量> in <遍历结构>:
image.png

  1. 1. 计数循环
  2. #语法 for i in range(M,N,K):
  3. >>> for i in range(1,6):
  4. print(i)
  5. 1
  6. 2
  7. 3
  8. 4
  9. 5
  10. >>> for i in range(1,6,2):
  11. print(i)
  12. 1
  13. 3
  14. 5
  15. 2. 字符串遍历循环
  16. #语法 for c in s:
  17. >>> for c in "python123":
  18. print(c,end='.') #输出结果结尾用 '.' 代替默认的 \n换行符
  19. p.y.t.h.o.n.1.2.3.
  20. 3. 列表遍历循环
  21. #语法 for item in ls:
  22. >>> for i in [123,'py',456]:
  23. print(i,end=',')
  24. 123,py,456,
  25. 4.文件遍历循环
  26. # for line in fi(外部文件)

4.2 无限循环

语法:while <条件>

  1. 1.示例
  2. >>> a = 3
  3. >>> while a > 0:
  4. a=a-1
  5. print(a,end='.')
  6. 2.1.0 #输出 2、1、0

4.3 循环控制保留字

breakcontinue

  • break 跳出并结束当前整个循环,执行循环后面的语句
  • continue 结束当次循环,继续执行后续次数的循环
  • break 和 continue 可以与 for 和 while循环搭配使用

示例:
image.png

  1. 1. continue 示例
  2. >>> for c in "python":
  3. if c == "t":
  4. continue
  5. print(c,end=".")
  6. p.y.h.o.n. #循环到t字符的时候, 跳过当次循环,继续取到h字符
  7. 2.break 示例
  8. >>> for c in "python":
  9. if c== "t":
  10. break
  11. print(c,end='.')
  12. p.y. #循环到t字符时,直接结束循环的语法了

多层循环下,break 只跳出当前的内层循环
image.png

4.4 循环的扩展

循环与else

  1. #1. for... + else:
  2. for <变量> in <遍历结构>:
  3. <语句块1>
  4. else:
  5. <语句块2>
  6. #2. while... +else:
  7. while <条件>:
  8. <语句块1>
  9. else:
  10. <语句块2>
  • 当循环没有被break语句退出时,执行else语句块
  • else语句块作为’正常’完成循环的奖励
  • 这里else的用法与异常处理中的else用法类似

示例
image.png