文章目录

  • 5. 流程控制 :选择、循环、断言、推导式
  • 5.1 选择结构
  • 5.2 pass ,assert 语句
  • 5.3 循环
  • 5.3.1 while 循环
  • 5.3.2 for 循环
  • 5.4 break 、continue
  • 5.5 推导式


5. 流程控制 :选择、循环、断言、推导式

  • 和其它编程语言一样,Python 按照执行流程也可分为 3 大结构:顺序结构选择(分支)结构循环结构
  1. 顺序结构:就是让程序按照从头到尾的顺序依次执行每一条 代码,不重复执行任何代码,也不跳过任何代码
  2. 选择结构(分支结构):就是让程序“拐弯”,有选择性的执行代码,换句话说,可以跳过没用的代码,只执行有用的代码。
  3. 循环结构 :就是让程序“杀个回马枪”,不断地重复执行同一段代码

5.1 选择结构

  • 选择结构由关键字: if elif else缩进和冒号组成
  • 语法格式:
if condition1 :
	do1
elif condition2 :
	do2
else :
	do3
  • 表达式是否成立条件:
  1. bool类型中 :True 为 “真”, False 为 “假”
  2. 数字中 00.0 为 “假”,其它值为 “真”
  3. 其它类型对象为 或者为 None 时为“假”, " " # 空字符串 [ ] # 空列表 ( ) # 空元组 { } # 空字典 None # 空值 均为假

5.2 pass ,assert 语句

  • 空语句 pass : Python 中的关键字,用来让解释器跳过此处,什么都不做
  • 语法格式 :
if condition1 :
	do1
elif condition2 :
	pass  # 空语句
else :
	do2
  • assert (断言语句),它用于判断某个表达式的值,如果值为,则程序可以继续往下执行;反之为,Python 解释器会报 AssertionError 错误。
  • 语法格式 :assert 表达式
if 表达式 == True :
    程序继续执行
else:
    程序报 AssertionError 错误

5.3 循环

5.3.1 while 循环

  • while 语句执行的具体流程为:首先判断条件表达式的值,其值为真(True)时,则执行代码块中的语句,当执行完毕后,再回过头来重新判断条件表达式的值是否为真,若仍为真,则继续重新执行代码块…如此循环,直到条件表达式的值为假(False),才终止循环
  • 语法格式:
while 条件表达式 :
    代码块
  • while 循环后可以紧跟着一个 else 代码块,它的作用是当循环条件为 False 跳出循环时,程序会最先执行 else 代码块中的代码:
while 条件表达式 :
    代码块
else :
	代码块

5.3.2 for 循环

  • for 循环,它常用于遍历字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素
  • 语法格式 :
for 迭代变量 in 字符串|列表|元组|字典|集合:
    代码块
  • for 循环后也可以紧跟着一个 else 代码块,它的作用是当循环条件为 False 跳出循环时,程序会最先执行 else 代码块中的代码:

5.4 break 、continue

  • 在循环结束前强制离开当前循环
  • continue 语句 :跳过执行本次循环体中剩余的代码,转而执行下一次的循环
  • break 语句 : 完全终止当前循环

5.5 推导式

  • 推导式(解析器 : 是 Python 独有的一种特性 , 使用推导式可以快速生成列表、元组、字典以及集合类型的数据
  • 列表推导式
  1. 利用 range 区间、元组、列表、字典和集合等数据类型,快速生成一个满足指定需求的列表
  2. 语法格式: [表达式 for 迭代变量 in 可迭代对象 [if 条件表达式] ]
  3. [if 条件表达式] 不是必须的 ,可以省略
  4. 列表推导式可使用多个循环 ,嵌套循环使用
  • 元组推导式
  1. 利用 range 区间、元组、列表、字典和集合等数据类型,快速生成一个满足指定需求的元组
  2. 语法格式 : (表达式 for 迭代变量 in 可迭代对象 [if 条件表达式] )
  • 字典推导式
  1. 借助列表、元组、字典、集合以及 range 区间,快速生成符合需求的字典
  2. 语法格式 : {表达式 for 迭代变量 in 可迭代对象 [if 条件表达式]}
  • 集合推导式
  1. 借助列表、元组、字典、集合以及 range 区间,快速生成符合需求的集合
  2. 语法格式 : { 表达式 for 迭代变量 in 可迭代对象 [if 条件表达式] }
  3. 表达式是以键值对(key:value)的形式

感谢阅读,如有错误,敬请见谅!!!