python 第八章 流程控制语句

145 阅读5分钟

大家好我是程序员_蓝天, 本文是为了方便初学者能够快速学习python,写的可能不是很好,希望大家多多包涵。 每个赞都是我前进的动力。

程序三大执行流程

流程控制语句的本质,都可以在生活中找到对应的替代品 --> 如果 否则 重复 中断 跳过

1.理解本质
2.用生活例子,理解编程思路

三大执行流程:
	1.顺序执行: 程序是由上往下执行得,线性结构,如果中间代码报错了,后面的是不会执行
	2.选择执行: 根据条件成立与否,执行对应语句.就像是开车,往不同的路线开.分支语句
	3.循环执行: 如果条件满足就一直重复执行代码,直到不满足为止结束循环

选择执行和循环执行 底层判断逻辑就是基于bool来判断

选择执行(条件判断语句, if)

​ if 语句的功能为'逻辑判断', 判断结果为真还是假

​ if: 如果 ​ else: 否则 ​ elif: 或者 else if

条件判断:
单分支: 满足条件就执行 if 里的代码, 不满足啥事都没有
双分支: 满足条件就执行 if 里的代码, 不满足就执行 else 的代码
多分支: 逐个判断是否满足 if, elif 的条件, 如果满足就执行对应代码, 都不满足执行 else 代码

1.单分支语句:

	if 判断条件:
		执行语句
	num = int(input('请输入你的考试成绩'))
	if num >= 90:
                print('90')

如果满足 if 条件, 就执行里面的代码, 否则无事发生

2.双分支语句:

	if 判断条件:
		执行语句
	else:
		执行语句
num = int(input('请输入你的考试成绩'))
if num >= 90:
    print('90')
else:
    print('加油.下次努力')
如果满足 if 条件就执行 if 里的代码, 否则执行 else 里的代码

3.多分支语句:

	if 判断条件:
		执行语句
	elif 判断条件:
		执行语句
	else:
		执行语句

num = int(input('请输入你的考试成绩'))
if num >= 90:
    print('带你下馆子')
elif num >= 80:
    print('带你去吃 KFC')
elif num >= 60:
    print('买饮料')
else:
    print('加油.')
如果满足 if 判断条件的, 就执行 if 里的代码
不满足就继续判断是否满足 elif 的条件, 满足就执行 elif 里的代码
都不满足执行 else 代码

and: 条件都满足才为真
or: 条件满足一个即为真

能做的东西:	
	文字游戏
	登录系统(用户名密码判断一致)
	

缩进的艺术, 代码块的控制

python 里面的代码块是通过缩进来控制的.
python 中, 代码权限用缩进(tab4 个空格)来表示
缩进正常用 tab 就可以了, 不要和空格混着用, 否则会报错
	如果想缩进 8 个空格
正确做法: 按两下 tab
错误做法: 按一下 tab, 手动敲 4 下空格 --> 报错

分数 = 0
if 分数 >= 95:
	print('你好')
print('多喝热水')
你好由于条件不满足, 不会输出
多喝热水, 没有缩进不归 if 管.不管怎样都会正常输出

循环执行(while)

人类的本质就是复读机, 复读机其实就是重复的做同一件事 --> 循环
编程中的循环的本质是为了:减少代码量, 避免重复操作, 提高运行效率
比如我要输出 100'你好'
	1.老老实实打 100print
	2.字符串*100
	3.用循环
死循环: 一直循环, 不会终止

while 循环的语法格式:
	while 循环条件:
		执行语句
		更新语句

# 抄书 100num = 1
while num <= 100: # 条件为真时循环, 为假时结束循环
	print(f'我在抄书, 这是我抄的第{num}遍') 
	num+= 1 # num = num + 1 抄书次数+1, 更新循环条件

while 1:
	print('你好')
最简单的死循环

break 与 continue

break = 终止, 结束本次循环
	continue = 跳过, 跳过本次循环
	num = 1
	while num <= 100:
		print(f'我在抄书, 这是我抄的第{num}遍')
		num+= 1
		if num == 70:
	    	print('算了算了.以后不要再翻车了.不用抄了')
	    	break
	num = 1
	while num <= 100:
		num += 1
		if num == 6 or num == 22 or num == 3 or num == 70 or num == 66:
	    	continue
        print(f'我在抄书, 这是我抄的第{num}遍')

pass

if 判断条件:

​		空着不写

​	while 判断条件:

​		空着不写:

​ 会报错,在编程中就是用 pass 来表示, 如果你写了一段代码, 还没想好里面要写什么东西, 就可以先写个 pass 让程序跳过这段内容

if 判断条件:
	pass

迭代循环(for)

可以理解为啥 while 的升级版, 用法作用和 while 都类似, 都是做循环操作, 但是 for 会更方便一些

迭代/遍历: 有一堆数据, 把这些数据一个接一个的取出来

for 里的变量不需要提前声明, 并且一般取名叫 i

语法:
for 变量 in 可迭代对象:
	执行语句

for 变量 in range(数值):
	执行语句

可迭代对象 --> 目前把可迭代对象理解为是有很多个数据的容器就行了(集合, 列表, 元组, 字典, 字符串)
     `for i in range(100):
            print(i) #输出 0-99
# range 里的值 1.默认从 0 开始的 2.终点值是到它的前一位

# 手动设置起点与终点
# for i in range(1,101):
#     print(i)

#  设置步长
# for i in range(1,101,2):
#     print(i)`

print 的 end

print 本身是没有换行功能的. 是字符串这个功能函数里面有个参数. 叫做 end. end 会在字符串最后自动加一个\n 实现换行的效果

end = 结尾值

  print('123', end ='热水')
	print('456', end ='')
	print('789', end ='\t')
	print('hello')
	print('祝大家身体健康')