流程控制
一、条件判断
条件判断语句(if语句)
-
执行的流程:
if语句在执行时,会先对条件表达式进行求值判断,
如果为True,则执行if后的语句
如果为False,则不执行 -
语法:if 条件表达式 :
代码块 -
代码块代码块中保存着一组代码,同一个代码块中的代码,要么都执行要么都不执行
-
代码块以缩进开始,直到代码恢复到之前的缩进级别时结束
-
代码块就是一种为代码分组的机制
input() 函数
- 该函数用来获取用户的输入
- input()调用后,程序会立即暂停,等待用户输入
- 用户输入完内容以后,点击回车程序才会继续向下执行
- 用户输入完成以后,其所输入的的内容会以返回值得形式返回
if-else语句
- 语法:
if 条件表达式 :
代码块
else :
代码块
- 执行流程:
if-else语句在执行时,先对if后的条件表达式进行求值判断
如果为True,则执行if后的代码块
如果为False,则执行else后的代码块)
if-elif-else 语句
value = 30000
if value >= 30000:
print('有钱任性')
elif value >= 20000:
print('有钱真好')
elif value >= 10000:
print('哥也月薪上万了')
elif value >= 5000:
print('工资还说的过去')
elif value >= 2000:
print('能养活自己了')
- 语法:
if 条件表达式 :
代码块
elif 条件表达式 :
代码块
elif 条件表达式 :
代码块
........
else :
代码块
- 执行流程:
if-elif-else语句在执行时,会自上向下依次对条件表达式进行求值判断,
如果表达式的结果为True,则执行当前代码块,然后语句结束
如果表达式的结果为False,则继续向下判断,直到找到True为止
如果所有的表达式都是False,则执行else后的代码块 - 总结: if-elif-else中只会有一个代码块会执行
二、循环控制
while语句
- 循环语句可以使指定的代码块重复指定的次数.循环语句分成两种,while循环 和 for循环
- 语法:
while 条件表达式 :
代码块
else:
代码块
break和continue
- break 可以用来立即退出循环语句,包括else语句
- continue 用来跳过当次循环
for循环遍历
for循环
- 通过for循环来遍历列表
语法
for 变量 in 序列(遍历的规则):
代码块
- 注意: for循环的代码块会执行多次,序列中有几个元素就会执行几次。每执行一次就会将序列中的一个元素赋值给变量,所以我们可以通过变量来获取列表中的元素
range(start, stop[, step])
参数说明
- ·start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
- stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
- step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
三、循环嵌套
循环嵌套
- Python 语言允许在一个循环体里面嵌入另一个循环。
while 表达式:
while 表达式:
代码块
代码块
for 变量 in 循环规则:
for 变量 in 循环规则:
代码块
代码块
四、常见问题总结
1. 为什么input输入的数据不能int类型做比较运算符的计算?
input函数输入的数据都是属于str类型,str类型的数据是不能和int类型的数据进行比较的,需要使用int()函数转化str数据才能进行比较
五、练习题
1、打印九九乘法表
for i in range(1,10):
for j in range(i):
j=j+1
print("{}*{}={}" .format(i,j,i*j),end=' ')
print('\n')
2、求1000以内所有的水仙花数
i=99
while i< 999 :
i += 1
a=i // 100
b=i // 10 % 10
c=i % 10 % 10
if a**3 + b**3 +c**3 == i :
print(i)
3、获取用户输入的任意数,判断其是否是质数?
a = int(input("请输入一个数,判断该数是不是质数:"))
if a <= 1:
print(a,'不是质数')
elif a == 2:
print(a,'是质数')
else:
i=2
while i < a:
if a%i == 0:
print(a,'不是质数')
break
i += 1
else:
print (a,'是质数')