文章目录
- 1.条件判断语句
-
- [1.1 if 语句](#1.1 if 语句)
- [2. input 函数](#2. input 函数)
- [3.if-else 语句](#3.if-else 语句)
- [4.if-elif-else 语句](#4.if-elif-else 语句)
- 2.循环语句
-
- [2.1 while语句](#2.1 while语句)
- [2.2 while语句练习:](#2.2 while语句练习:)
- [2.3 循环嵌套](#2.3 循环嵌套)
- [2.4 break和continue](#2.4 break和continue)
通过流程控制语句,可以改变程序的执行顺序,也可以让指定程序反复执行多次。
流程控制语句分类:
- 条件判断语句
- 循环语句
1.条件判断语句
1.1 if 语句
if语句是常见的条件判断语句
语法格式:if 条件表达式 :语句
默认情况下,if语句只会控制紧随其后的那条语句,
如果希望控制多条语句,可以使用代码块(即在冒号后另起一行,带有一个缩进)

执行流程:if语句在执行时,先对条件表达式进行求值判断,
如果为True,则执行if后的语句,如果为False,则不执行
注意
在if的条件表达式中可以使用逻辑运算符连接多个条件
缩进的方式
- 一种使用Tab键,一种使用空格(4个)
- Python的官方文档中推荐使用空格来缩进
- Python代码中使用的缩进方式必须统一
为了统一缩进方式,可以在sublime中设置按Tab键时生成4个空格
设置步骤:
首选项-设置,在弹出的文档中搜索 translate_tabs_to_spaces,将这个值设置为true
2. input 函数
该函数用来获取用户的输入
- input()函数调用后,程序会立即暂停,等待用户输入。用户输入完成后,点击回车程序才会继续执行
- input函数中可以设置一个字符串参数,这个字符串将会作为提示文字显示
- 用户输入完成后,输入的内容会以返回值的形式返回
注意: input的返回值是一个字符串,如果输入的是数字类型,接收的时候需要做类型转换
3.if-else 语句
语法结构:if-else 条件表达式:
python
if 条件表达式 :
代码块
else :
代码块
eg:
4.if-elif-else 语句
多条件判断语句,语法结构如下:
python
if 条件表达式 :
代码块
elif 条件表达式 :
代码块
elif 条件表达式 :
代码块
.
.
.
else :
代码块
代码执行流程:
if-elif-else 语句在执行时,会自上而下一次对条件表达式进行求值判断,
- 如果表达式的结果为True,则执行当前代码块,然后语句结束
- 如果表达式结果为False,则继续向下判断,直到找到True为止
- 如果所有的表达式都是False,则执行else后的代码块
if-elif-else语句只有一个代码块会被执行
eg:
2.循环语句
循环语句可以指定的代码块重复指定的次数,循环语句分为:
- while循环
- for循环
2.1 while语句
语法结构
python
while 条件表达式 :
代码块
执行流程:
- while语句在执行时,会先对while后的条件表达式进行求值判断,
- 如果判断结果为True,则执行循环体(代码块)
- 循环体执行完毕,继续对条件表达式进行求值判断,以此类推,直到判断结果为False,则循环终止
- 如果循环有对应的else,则执行else后的代码块
- 循环三要素
- 初始化表达式,通过初始化表达式初始化一个变量
- 条件表达式,用来设置循环执行的条件
- 更新表达式,修改初始化变量的值
eg:
python
# 1.初始化表达式
i = 0
# 2.条件表达式,设置循环执行条件
while i < 10 :
print(i)
# 3.更新表达式,修改初始化值
i += 1
执行结果:
python
0
1
2
3
4
5
6
7
8
9
***Repl Closed***
2.2 while语句练习:
- 求100以内所有奇数的和:
python
i= 1
res = 0
while i < 100 :
res += i
i += 2
print('100以内奇数和=',res)
结果:
python
100以内奇数和= 2500
***Repl Closed***
- 获取1000以内的水仙花数
python
i = 100
while i < 1000 :
# 百位数
a = i // 100
# 十位数
b = (i - a * 100) // 10
# 个位数
c = i % 10
# 执行判断
if a ** 3 + b ** 3 + c ** 3 == i :
print(i)
i += 1
运行结果:
python
153
370
371
407
***Repl Closed***
2.3 循环嵌套
循环嵌套时,外层循环每执行一次,内层循环就要执行一圈
python
i = 0
while i < 5 :
j = 0
while j < i + 1 :
print('*',end='')
j += 1
print()
i += 1
# 结果
*
**
***
****
*****
***Repl Closed***
打印乘法表:
python
user_input = int(input('请输入乘法表大小:'))
if user_input > 0 :
# 表示行
i = 1
#表示列
# j = 1
while i < user_input :
j = 1
while j <= i :
print(f'{j}*{i}={j * i}',end=' ')
j += 1
print()
i += 1
# 结果:
请输入乘法表大小:10
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
***Repl Closed***
2.4 break和continue
- break可以用来立即退出当前循环(退出内层循环,如果外层有循环会继续执行)
- continue 表示跳过当次,执行下一次循环
break和continue都是针对距离最近的循环起作用
- pass
pass在Python中用来在判断或循环语句中占位的