流程控制
Python程序执行,一定按照某种规律在执行 1.宏观一定是自上而下(逻辑上方代码一定比逻辑下方代码先执行):顺序结构 2.遇到需要条件判断选择不同执行路线的执行方式:分支结构 3.有些事情需要重复不断的去执行(当满足某种条件或不满足某种条件结束重复动作):循环结构
if分支
语法结构 if 判断条件: 同缩进代码块 elif 判断条件: 同缩进代码块
... else: 同缩进代码块 代码执行过程中if条件通过就不会进入elif判断和else 如果if条件判断不通过再判断elif是否通过 elif判断通过不执行else else只在所有条件判断不通过才执行 elif可以根据需求出现多次或不出现(代码层次方面要考虑条件的先后顺序) 可以根据需求决定是否有else结构
if嵌套 可以在任何结构的判断缩进下添加if分支结构且条件的判断取决于外层条件判断 if 条件: if 条件: pass elif 条件: pass ... else: pass elif 条件: pass
...
while循环
语法: while 条件: 循环体代码 当判断条件为满足时会执行循环体,执行完毕会再去判断条件是否满足 还满足会继续执行循环体,从而循环执行代码 如果需要结束循环需要让条件在某种情况下不满足 如果需要循环体代码让循环退出可将条件定义为全局变量初始为True 在某种条件下修改该变量为False退出 或者直接使用break退出循环 whlie中使用break是退出本层循环 while中使用continue是退出本次循环直接开始下次循环
while嵌套想要完全退出需要逐循环退出 补充知识点: 死循环:不能主动结束的循环,想要结束只能通过break 0,""空字符串,[],{},None可以被while 及 if这种需要条件的关键词转换为False,其他都是True while...else...:else分支会在while循环正常结束(没有被break结束)时执行
for循环
for用来完成特定的循环需求,不依赖于索引取值 语法: for 变量 in 被循环的容器: 循环体代码 for 变量 in range(取值范围): 循环体代码 # 1.for循环会将被循环的容器中的值逐个赋值给变量 # 注:每一次循环 变量的赋值结果 不使用,下一次循环就会被覆盖,无法找回 # 3.当 被循环的容器 中的值被 全部赋值一遍后,循环自动结束 # for+break # break用来主动结束for循环 name_list = ['nick', 'jason', 'tank', 'sean'] for name in name_list: if name == 'jason': break print(name) # for+continue # continue 跳出本次循环 开始下一次循环 name_list = ['nick', 'jason', 'tank', 'sean'] for name in name_list: if name == 'jason': continue print(name) # for...else... 只有for正常结束没有被break结束才会执行else # range() # 1. range(终止数) 范围从0开始不包含终止数 rang(3) #[0,1, 2] # 2. range(起始数, 终止数)范围起始数开始不包含终止数 rang(1,5) #[1, 2, 3, 4] # 3. range(起始数, 终止数, 步长)步长不写默认为1 范围起始数开始不包含终止数
步长为负就反取值 range(10, 5, -1) # [10, 9, 8, 7, 6]
步长大小为 取值的间隔大小 range(5,10,2) #[5,7,9]
range在python2与python3中的区别 python2中 # range其实就是一个列表 # xrange其实就是python3中的range #python3中 range,你需要值的时候才给你