什么是流程控制?
定义:流程控制即控制事物的执行流程
执行流程的三种方式:
1.顺序结构:
自上而下的一次运行 python程序默认是顺序结构(即一行一行执行)
eg:
2.分支结构
在运行过程中根据条件不同可能会执行不同的流程
eg:
3.循环结构
在运行过程中有些代码需要反复执行
eg:
必知必会
1.条件都会转成布尔值 从而决定子代码是否执行
2.在python中 使用缩进来表示代码的从属关系
3.并不是所有的代码都可以拥有子代码
4.同属于某个代码的多行子代码 必须要保持相同的缩进量
在python中推荐使用四个空格来缩进
ps:小技巧 上一行代码的结尾如果是冒号 那么下一行代码必缩进
分支结构
关键字 if
1.单if分支结构 eg:
if 条件:
条件成立之后执行的子代码块
2.if与else连用
if 条件:
条件成立之后执行的子代码块
else:
条件不成立的情况下执行的子代码块
ps:if与else连用 两者的子代码永远只会执行一个
3.if elif else三者连用
if 条件1:
条件1成立之后执行的子代码块
elif 条件2:
条件1不成立 条件2成立之后执行的子代码块
elif 条件3:
条件1和2都不成立 条件3成立之后执行的子代码块
...
else:
上述条件都不成立 执行的子代码块
ps:elif可以有多个
三者连用也是只会执行其中一个子代码块
eg:查成绩
score = input('请输入您的成绩:')
score = float(score)
if score > 90:
print('优秀')
elif score > 80:
print('良好')
elif score > 70:
print('一般')
elif score > 60:
print('及格')
else:
print('挂')
if判断之嵌套
使用:
username = input('请输入用户名字:') # 获取用户名
password = input('请输入密码:') # 获取用户密码
if username == 'jason' and password == '123': # 如果用户名输入正确用户名和密码则打印以下内容
print('欢迎光临')
else: # 否则打印以下内容
print('用户名或密码错误')
4.while循环
while 条件:
条件成立之后循环执行的子代码块
eg:
while True:
username = input('username>>>:')
password = input('password>>>:')
if username == 'jason' and password == '123':
print('欢迎光临')
else:
print('密码错误')
5. while+break
break结束本层循环
while True:
username = input('username>>>:')
password = input('password>>>:')
if username == 'jason' and password == '123':
print('欢迎光临')
break
else:
print('密码错误')
while嵌套
while True:
# 1.获取用户输入的用户名和密码
username = input('username>>>:')
password = input('password>>>:')
# 2.判断用户名和密码是否正确
if username == 'jason' and password == '123':
print('欢迎光临')
while True:
cmd = input('请输入您的指令>>>:')
# 判断用户是否想退出
if cmd == 'q':
break
print('正在执行您的指令:%s' % cmd)
break
else:
print('密码错误')
全局标志位
标志位的使用:
flag = True
while flag:
# 1.获取用户输入的用户名和密码
username = input('username>>>:')
password = input('password>>>:')
# 2.判断用户名和密码是否正确
if username == 'jason' and password == '123':
print('欢迎光临')
while flag:
cmd = input('请输入您的指令>>>:')
# 判断用户是否想退出
if cmd == 'q':
flag = False
print('正在执行您的指令:%s' % cmd)
else:
print('密码错误')
拓展练习:
做一个猜年龄的游戏
普通要求
用户可以有三次猜错的机会 如果过程中猜对了直接退出
拔高要求
三次机会用完之后提示用户是否继续尝试 如果是则再给三次机会 如果否则直接结束
数据类型转换提示
age = input('age>>>:')
real_age = 18
# 将字符串的数字转换成整型
age = int(age)
答案:
age = 18
count = 0
while count < 3:
count += 1
guess = int(input('年龄:'))
if guess < age:
print('小了')
elif guess > age:
print('老了')
else:
print('恭喜你猜对了')
break
if count == 3:
over = input('你没有机会了,请问是否继续(yes or no):')
if over == 'yes':
count = 0
else:
print('游戏结束!')
好了,今天就说到这里了,拜了个拜