一、简介
- Python代码在执行时是按照自上向下顺序执行的。
- 通过流程控制语句,可以改变程序的执行顺序,也可以让指定的程序反复执行多次
- 流程控制语句分成两大类:条件判断语句,循环语句
二、条件判断语句(if语句)
1. 语法
if 条件表达式 :
代码块
2. 执行的流程
- if 语句在执行时,会先对条件表达式进行求值判断,
- 如果为True,则执行if后的语句
- 如果为False,则不执行
- 默认情况下,if语句只会控制紧随其后的那条语句,如果希望if可以控制多条语句,则可以在if后跟着一个代码块
- 代码块
- 代码块中保存着一组代码,同一个代码块中的代码,要么都执行要么都不执行
- 代码块就是一种为代码分组的机制
- 如果要编写代码块,语句就不能紧随在:后边,而是要写在下一行
- 代码块以缩进开始,直到代码恢复到之前的缩进级别时结束
- 缩进有两种方式,一种是使用tab键,一种是使用空格(四个)
- Python的官方文档中推荐我们使用空格来缩进
- Python代码中使用的缩进方式必须统一
- 代码块
if True : print('你猜我出来么?')
num = 20
if num > 10 : print('num比10大!')
print('谁也管不了我')
if False :
print(123)
print(456)
print(789)
print(101112)
3. 使用逻辑运算符来连接多个条件
- 如果希望所有条件同时满足,则需要使用and
- 如果希望只要有一个条件满足即可,则需要使用or
num = 15
if num > 10 and num < 20 :
print('num比10大,num比20小!')
if 10 < num < 20 :
print('num比10大,num比20小!')
三、input()函数
- 该函数用来获取用户的输入
- input()调用后,程序会立即暂停,等待用户输入
- 用户输入完内容以后,点击回车程序才会继续向下执行
- 用户输入完成以后,其所输入的的内容会以返回值得形式返回
- 注意:input()的返回值是一个字符串
- input()函数中可以设置一个字符串作为参数,这个字符串将会作为提示文字显示
- input()也可以用于暂时阻止程序结束
a = input('请输入任意内容:')
print('用户输入的内容是:',a)
案例
- 在命令行让用户输入一个用户名,获取用户输入,并进行判断,如果用户输入的用户名是admin,则显示欢迎管理员光临,如果用户输入的是其他的用户名,则什么也不做
# 获取用户输入的用户名
username = input('请输入你的用户名:')
# 判断用户名是否是admin
if username == 'admin' :
print('欢迎管理员光临!')
四、if-else语句
4.1 语法
if 条件表达式 :
代码块
else :
代码块
4.2 执行流程
- if-else语句在执行时,先对if后的条件表达式进行求值判断
- 如果为True,则执行if后的代码块
- 如果为False,则执行else后的代码块
age = 7
if age > 17 :
print('你已经成年了~~')
else :
print('你还未成年~~')
五、if-elif-else语句
5.1 语法
if 条件表达式 :
代码块
elif 条件表达式 :
代码块
elif 条件表达式 :
代码块
elif 条件表达式 :
代码块
else :
代码块
5.2 执行流程
- if-elif-else语句在执行时,会自上向下依次对条件表达式进行求值判断,
- 如果表达式的结果为True,则执行当前代码块,然后语句结束
- 如果表达式的结果为False,则继续向下判断,直到找到True为止
- 如果所有的表达式都是False,则执行else后的代码块
- if-elif-else中只会有一个代码块会执行
5.2.1 案例1
age = 210
if age > 200 :
print('活着可真没劲呢!')
elif age > 100 :
print('你也是老大不小了!')
elif age >= 60 :
print('你已经退休了!')
elif age >= 30 :
print('你已经是中年了!')
elif age >= 18 :
print('你已经成年了!')
else :
print('你还是个小孩!')
5.2.2 案例2
age = 68
if age >= 18 and age < 30 :
print('你已经成年了!')
elif age >= 30 and age < 60 :
print('你已经中年了!')
elif age >= 60 :
print('你已经退休了!')