知道什么是流程控制,理解和运用if分支结构,循环结构(while循环),以及关键字break,continue
什么是流程控制
控制事物的执行流程
执行流程的分类
名称 | 详情 |
---|---|
顺序结构 | 顺序结构是程序按照现行顺序依次执行的一种运行结构。例如:语句块1=>语句块2=>……=>语句块n |
分支结构 | 分支结构是程序按照判断条件选择不同执行路径的运行方式。最基础的是二分支结构,即判断条件产生“是”或“否”的结果,并根据这个结构选择不同路线,二分支结构组合形成多分支结构。 |
循环结构 | 循环结构是按照判断条件结果向后执行的一张方式。即根据结果确定是否将循环体中的语句再次执行的一种结果。 |
1.在python中使用缩进来表示代码的从属关系
if 18 > 19:
print('嘿嘿嘿') # 属于if判断 是否执行由if判断决定
"""我们也将缩进的代码称之为某某某的子代码"""
2.并不是所有的代码都可以有子代码(从属的代码)
目前可以有的
if
else
3.如果多行代码属于同一个父代码 那么这多行代码需要保证相同的缩进
在python中推荐使用四个空格来表示缩进(四个好看一些)
4.具有相同缩进量的代码彼此之间按照顺序结构执行 没有从属关系 平起平坐
"""ps:如果一行代码的结尾是冒号结束 那么紧挨着的下一行必缩进
冒号的含义相当于是要拥有子代码
"""
结构基本语法
if 条件表达式
语句一
语句二
语句三
......
实例如下
# 先定义一个名字为'Alice'
name = 'Alice'
# 判断名字是否为'Alice'
if name == 'Alice':
print('Hi, Alice.')
特点
- 条件表达式就是计算结果必须为布尔值的表达式
- 表达式后面的冒号不能少
- 注意if后面出现的语句,如果属于if语句块,则必须同一缩进等级
- 条件表达式结果为True执行if后面的缩进的语句块
结构基本语法
if条件表达式:
语句一
语句二
...
else:
语句一
语句二
...
实例如下
# 定义一个名字为'Bob'
name = 'Bob'
# 判断名字是否为'Alice'
if name == 'Alice':
# 是的话输出'Hi, Alice.'
print('Hi, Alice.')
else:
# 不是的话输出'Hello, stranger.'
print('Hello, stranger.')
特点
- 条件表达式就是计算结果必须为布尔值的表达式
- 表达式后面的冒号不能少
- 注意if后面出现的语句,如果属于if语句块,则必须同一缩进等级
- 条件表达式结果为True执行if后面的缩进的语句块反之执行else后面的缩进的语句块
结构基本语法
if 条件表达式:
语句1
…
elif 条件表达式:
语句1
…
elif 条件表达式:
语句1
…
else:
语句1
… …
实例如下
# 定义一个名字为'Bob'
name = 'Bob'
# 定义一个年龄为30
age = 30
#判断名字是否为'Alice'
if name == 'Alice':
print('Hi, Alice.')
#判断年龄是否小于12
elif age < 12:
print('You are not Alice, kiddo.')
#以上条件不满足的话就输出'You are neither Alice nor a little kid.'
else:
print('You are neither Alice nor a little kid.')
特点
- elif可以有好多个,根据实际情况
- 多路分支最多只会执行一种情况
- 三者使用时缩进相同
- if 结构中仅if可以独立存在
结构基本语法
if 条件表达式:
语句1
if 条件表达式:
语句2
else:
语句3
else:
语句4
实例如下
# 4.if的嵌套(可以延后掌握)
# 4.如果女孩子的年龄大于38说 不好意思认错人了 否则上去要微信
# 如果成功了 则去吃饭 看电影 逛商场 直至天黑 宿舍锁门了!!!
age = 22
is_success = True
if age < 38:
print('我观察你很久了 想了想还是勇气给你要个联系方式')
if is_success:
print('吃饭 看电影 天黑了 睡觉觉')
else:
print('去你妹的')
else:
print('哎呀不好意思 认错人了')
# 1.编写一个用户登录程序
# 如果用户名是jason并且密码是123 则打印登录成功
# 如果不是则打印用户名或密码错误
"""
前期写程序可以先用注释编写思路 之后再写对应的代码
相当于将中文翻译成python代码而已
"""
# 1.获取用户的用户名和密码
username = input('username>>>:')
password = input('password>>>:')
# 2.校验/判断用户名和密码是否正确
if username == 'jason' and password == '123':
print('欢迎老板光临')
else:
print('用户名或密码错误!!!')
# 2.编写一个成绩评判系统
# 如果成绩大于90 则打印优秀
# 如果成绩大于80 则打印良好
# 如果成绩大于70 则打印一般
# 如果成绩大于60 则打印及格
# 如果成绩小于60 则打印挂科
# 1.先获取学生的成绩
score = input('score>>>:')
score = int(score) # 将字符串的成绩转成整型的成绩(先忽略)
# 2.罗列对应的条件
if score > 90:
print('优秀')
elif score > 80:
print('良好')
elif score > 70:
print('一般')
elif score > 60:
print('及格')
else:
print('挂科')
结构基本语法
"""
语法结构
while 条件:
条件成立之后执行的循环体代码
1.先判断条件是否成立 如果成立则执行循环体代码
2.循环体代码执行完毕后 再次判断条件是否成立 如果成立则继续执行循环体代码 如果不成立则跳出循环
"""
实例如下
#初始化变量spam
spam = 0
#循环五次
while spam < 5:
#每次循环打印输出'Hello, world.'
print('Hello, world.')
#每次循环累加
spam = spam + 1
特点
- 当while后的条件计算为True时一直循环,循环过程为执行完代码块后又回到代码块的第一行继续执行代码。
特点
- 当在while循环中使用break时,循环立刻停止。在使用 while True: 循环时很有用,比如应用于输入正确用户名的场景下。
- break是用于直接结束本层循环,break只能结束所在的那一层循环
实例如下
# 恒循环
while True:
# 获取输入的名字
name = input('Please type your name>>')
# 判断是否为'your name'
if name == 'your name':
# 是的话结束循环
break
# 打印'Thank you!'
print('Thank you!')
特点
- 用于在执行代码块时立即回到循环起点,一般放在循环中间的位置。
- continu是用于结束本次循环 直接开始下一次循环
实例如下
while True:
print('who are you?')
name = input()
if name != 'Joe':
continue
print('Hello,Joe.What is the password?(It is a fish)')
password = input()
if password == 'swordfish':
break
print('Access Granted.')
计划学习的时间
1、 上午8:30~12:30
2、 下午2:30~5:30
3、 晚上6:30~9:30
统计学习计划的总量
1、 技术笔记 1遍
2、CSDN 技术博客 1篇
3、每日录音
4、课后作业
编写一个猜年龄的游戏
基本要求
如果不对的情况下可以猜三次 如果对了直接结束
拔高练习
三次机会用完之后提示用户是否继续猜测 如果用户输入了y
则再给用户三次机会 如果用户输入n则直接结束
import random
#产生一个0~20以内的随机整数
age = random.randint(0, 20)
count = 0
while True:
if count < 3:
guess = int(input(">>:"))
if guess > age:
print("猜的太大了,往小里试试...")
count += 1
elif guess < age:
print("猜的太小了,往大里试试...")
count += 1
else:
print("恭喜你,猜对了...")
break
else:
a = input('您已经猜错了三次,是否继续猜测(y/n)>>:')
if a == 'y':
count = 0
else:
print('感谢您本次游玩,欢迎下次光临!')
break