1.流程控制语句
概括:生活中做事情,有三种做事情的逻辑
1. 顺序
从上往下,从左往右 按照顺序一点点来
2. 选择(分支结构)
达到某个条件就做某一件事 做选择
3. 循环(循环结构)
重复做一件事情
2.分支结构
1.什么是分支结构
分支结构就是根据条件判断的真假去执行不同分支对应的子代码
让程序有选择的这行代码
2.为什么要用分支结构
人类某些时候需要根据条件来决定做什么事情,比如:如果今天下雨,就带伞
所以程序中必须有相应的机制来控制计算机具备人的这种判断能力
3.选择执行(条件判断语句,if)
if:如果
else:否则
elif:或者 & else if
注意:在判断条件要有空格,且执行语句要有缩进(按tab键或者四个空格)
条件判断:
单分支:
满足条件就执行if代码,不满足无事发生
表明方式:
if 判断条件:
执行语句
如果满足if条件,执行里面代码,否则不执行
双分支语句:
表面方式:
if 判断条件:
执行语句
else:
执行语句
如果满足if条件,执行里面代码,否则执行else里的代码
多分支语句
表面方式:
if 判断条件:
执行语句
elif 判断条件:
执行语句
else:
执行语句
如果满足if判断的条件,执行if里的代码,不满足接着判断是否满足elif的条件,如果满足执行elif里的代码,如果全部都不满足就执行else的代码
缩进的艺术,代码块的控制:
python里面通过缩进,来控制代码快,表示权限
python中,代码权限用缩进(tab或者四个空格)来表示
缩进正常用tab就可以了,不要和空格混用,否则会报错
如果想缩进8个空格:
正确做法:按两下tab
错误做法:按一下tab,再按四下空格-->报错
4.循环结构(while循环 for循环)
循环结构就是重复执行某段代码块
tips:for循环能搞定的,while都能搞定,但是while能搞定的,for不能搞定,for循环只是一个对while循环的一个特殊的方便的操作而已
编程操作中,循环语句的本质是为了:"减少代码量,避免重复操作,提高运行效率"
死循环
什么叫做死循环
一直重复,停不下来,无限循环
走出误区:(扩展点,目前了解即可)
在开发中我们要避免死循环,很多时候我们必须要用死循环,不然你的程序一下子就运行完了
所以我们说的避免死循环的本质是避免CPU一直没休息的死循环
while循环的语法格式:
while 循环条件:
执行语句
更新语句
Eg:# 抄书100次
num = 1 # 定义抄书的次数
while num <= 100: # 条件为真时循环,为假时不循环
print(f"我在抄书,这是我第{num}次抄")
num += 1 # num = num + 1的简写, 抄书次数+1,更新循环条件
拓展: continue # 对应就是这一轮循环剩余的代码不执行了
相当于在一个代码执行中满足某个条件时就结束当前这一个循环再次回到条件运行循环
break # 对应的是离开了这个循环不管了
相当于在此终止运行以后代码
一个break只能对应一个循环
continue和break两者一般与if连用来设置条件判断是否满足且break,continue只能出现在循环中
Eg:
num = 1
while num <= 100:
if num == 70:
print('到70就可以了') /print('到70就回到条件')
break /拓展: continue
print(num)
num+=1
else:
print('我正常的结束了') # 如果循环正常结束,就一定会在最后执行这里面的代码
但是如果程序执行到了break,这里就不会执行了
5. 迭代循环(for)
用法和作用和while都类似,都是做循环操作.但是for往往会更方便一些.
迭代/遍历:有一堆数据,把这些数据一个接一个的取出来
①for 临时变量 in range(n):
执行语句
for i in range(100):
print(i)
此代码中,i是作为临时变量,作用是临时存储循环的值.变量不是固定叫i,可以取别的名字,但一般都取名i
range的特性为: 1.默认从0开始 2.终点值到前一位
此代码的作用为输出0-99 (共100次操作)
②遍历数据:
for 临时变量 in 可迭代对象:
执行语句
talk = '多喝热水'
for i in talk:
print(i)
此代码中,会对talk进行遍历,把里面的数据一个接一个的取出来,赋值给i.最后的输出结果为, 把多喝热水四个字单独输出
todo 可迭代对象:目前简单理解为,有'很多个数据'的对象即可.比如str,list,tuple,set,dict
本质
1. 将数据中的第一个字符/列表或元祖或集合元素/字典的键给那个名字
2. 执行for里面的代码,执行完了以后
3. 将数据中的下一个字符/列表或元祖或集合元素/字典的键给那个名字
break
continue
else
在for中一样的和while一样的用法和功能