在我看来,流程控制语句分为顺序、选择和循环三部分。
包括了if语句,while语句,for循环语句。如下:
1)if语句
我的理解就是 :if语句用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一
if 条件表达式:
代码块
使用多个elif代码块
if-elif-else语句
if--elif-else语句适用于有3种情况的条件测试,依次判断每个条件测试是否通过,直到遇到通过了的条件测试。
age = 8
if age < 5:
price = 0
elif age < 18:
price = 10
else:
price = 20
print("The ticket price for you is "+ str(price) + ".")
if-elif-elif-elif的语句类似if-elif-else的语句,不过是将最后一个else改成了elif,功能相同,只是阅读起来可能更容易理解。
age = 68
if age < 5:
price = 0
elif age < 18:
price = 10
elif age < 65:
price = 20
elif age >= 65:
price = 0
print("The ticket price for you is "+ str(price) + ".")
if嵌套
外边先判断 再里边判断
Python中通过if嵌套可以实现程序中条件语句的嵌套逻辑。if嵌套的语法格式如下所示:
if 判断条件1: # 外层条件
代码段1
if 判断条件2: # 内层条件
代码段2
...
a=input('你是会员吗y/n')
qian=float(input(‘请输入金额’)
if a=='y':
if qian>=200:
print('付款金额',200*0.8)
else:
print('付款金额',200*0.9)
else:
if qian>=200:
print('付款金额',200*0.95)
条件表达式:
a,b=10,20
print (a,'>=',b) if a>=b else (a,'<',b)) 真就左边 假就右边
pass语句
当没有想好时可以用pass来占位 程序不会报错
a=input('你是会员吗y/n')
qian=float(input(‘请输入金额’)
if a=='y':
if qian>=200:
pass
else:
if qian>=200:
pass
2)while语句
初始化变量 条件判断 循环体 改变变量
sum=0
初始化变量
a=1
条件判断
while a<10:
循环体
sum+=a
改变变量
a+=1
print()
while 条件表达式:
代码块
sum=0
b=1
while b<10:
if b%2==0:
sum+=b
b+=1
print(sum)
for语句
for语句一般用于实现遍历循环。遍历指逐一访问目标对象中的数据,例如逐个访问字符串中的字符;遍历循环指在循环中完成对目标对象的遍历。
for 临时变量 in 目标对象: # 外层循环
代码段1
for 临时变量 in 目标对象: # 内层循环
代码段2
。。。
说到for循环可以拉扯到range()函数
range(10) range(1,10),range(1,10,1) 有三种写法
r=range(10) 默认开始和步长 从0开始
print(list(r))
r=range(1,10) 默认步长
print(list(r))
r=range(1,10,2) 指定开始结束和步长
print(list(r))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 3, 5, 7, 9]
for i in range(5): print('人生苦短,我用python') 输出5句话 从0开始 不包括5
EG:九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print(i,'*',j,'=',i*j,end='\t')
1 * 1 = 1
2 * 1 = 2 2 * 2 = 4
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9
4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16
5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25
6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36
7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49
8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8=64
9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81
break语句和continue语句
for word in "Python":
if (word == 'o'):
break
print(word, end=" ")
for word in "Python":
if (word == 'o'):
continue
print(word, end=" ")
break表示结束循环,运行到这里时就会结束
而countinue表示跳出本次循环
eg:猜数字
for i in range(1,101):
if i%7==0:
print(i,'拍手')
else:
continue
7 拍手
14 拍手
21 拍手
28 拍手
35 拍手
42 拍手
49 拍手
56 拍手
63 拍手
70 拍手
77 拍手
84 拍手
91 拍手
98 拍手
eg:阶段案例——房贷计算器
# import main
# years= int(input('请输入贷款期限(年):'))
# if years>=5:
# print("请输入贷款类型 1表示商业 2表示公积金")
# lx=int(input('贷款类型'))
# if lx ==1:
# r=0.049
# elif lx==2:
# r =0.0325
# elif 0<years<5:
# print("请输入贷款类型 1表示商业 2表示公积金")
# lx = int(input('贷款类型'))
# if lx == 1:
# r = 0.0475
# elif lx==2:
# r = 0.0275
# else:
# print('输入不正确')
#
# yl=r/12 #月利率
# y=12*years#贷款总月数
# q=int(input('请输入贷款金额:'))
# ylx=yl*q#月利息
# yg=q*yl*pow(1+yl,y)/(pow((1+yl),y)-1)
# ze=yg*years*12
# lx=ze-q
# # print(f'每月月供{mrp1},还款总额{total},需换利息{li}')
# print('每月月供%.1f元,还款总额%.1f元,需换利息%.1f元'% (yl,ze,lx))
本章小结
本章主要讲解了流程控制的相关知识,包括条件语句、循环语句、跳转语句,并结合众多精彩实例演示了如何利用各种语句实现流程控制。
通过本章的学习,希望读者能掌握程序的执行流程和流程控制语句的用法,为后续的学习打好扎实的基础。