流程控制
既然程序式模拟人类大脑一样工作,那么有时候我们程序能根据外部变化而进行相应的改变
例如 1、age> 30岁 叫阿姨, 2、age< 30 岁 叫小姐姐
一、if....elif......else...
eg: 小明相亲,要求 年龄25以下,身高160以上, 体重60kg 一下
age = 25
height= 160
weigh = 60
a = int(input("请输入本次相亲女生年龄:》》"))
h = int(input("请输入本次相亲女生身高:》》"))
w = int(input("请输入本次相亲女生体重:》》"))
if a<=age and h>= height and w <=weigh:
print("哇!我的真爱")
else:
print("什么嘛,这么丑")
eg;
# 如果:今天是Monday,那么:上班
# 如果:今天是Tuesday,那么:上班 #
#如果:今天是Wednesday,那么:上班 #
#如果:今天是Thursday,那么:上班
# 如果:今天是Friday,那么:上班
# 如果:今天是Saturday,那么:好羡慕不上班的人
# 如果:今天是Sunday,那么:happy day
解法一:
today = input("请输入今天星期几=>")
if today =="Monday":
print("上班")
elif today =="Tuesday":
print("上班")
elif today == "Wednesday":
print("上班")
elif today == "Thursday":
print("上班")
elif today == "Friday":
print("上班")
elif today == "Saturday":
print("好羡慕不上班的人")
else:
print("happy day! ")
解法二:
today = input("请输入今天星期几=>")
if today =="Monday" or today == "Tuesday" or today =="Wednesday" or today =="Thursday" or today =="Friday":
print("上班")
elif today =="Saturday":
print("好羡慕不上班的人")
else:
print("happy day! ")
解法三:
today = input("请输入今天星期几=>")
if today in ["Monday","Tuesday","Wednesday","Thursday","Friday"] :
print("上班")
elif today =="Saturday":
print("好羡慕不上班的人")
else:
print("happy day!")
二、流程控制之while循环
while 条件:
循环体
如果条件为真,那么循环体则执行,执行完毕后再次循环,重新判断条件
如果条件为假,那么循环体不执行,循环终止
1 为何要用循环
eg: 打印 0-10
count = 0
while count <=10:
print(count)
count+=1
2 条件循环:while,语法如下
eg:打印 0-10 的偶数
count = 0
while count <=10:
if count%2 ==0:
print(count)
count+=1
3 死循环
count = 0
while True:
print(count)
count+=1
4 break与continue
break 结束循环,在循环里面遇到break,不管还有多少次循环,立即结束整个循环
while True:
print(123)
break
print(234)
continue 结束本次循环,下面的代码不执行了,从第一行又开始执行
while True:
print(123)
continue
print(234)
5、循环嵌套与tag
tag=True
while tag:
......
while tag:
........
while tag:
tag=False
eg:
1 循环验证用户输入的用户名与密码 2 认证通过后,运行用户重复执行命令 3 当用户输入命令为quit时,则退出整个程序
user = "lws"
passwd = 123456
tag = True
while tag:
inp_user = input("请输入用户名=>")
inp_passwd = input("请输入密码=>")
if user != inp_user and passwd != inp_passwd:
print("需要重新输入账号密码登录吗")
inp_enter = input("请输入yes or q,yes代表继续执行,q 推出 =>")
if inp_enter =="yes":
continue
if inp_enter =="q":
break
else:
print("恭喜登录成功")
break
6、while+else
与其它语言else 一般只与if 搭配不同,在Python 中还有个while ...else 语句,while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句
count =0
while count <=5:
print(count)
count+=1
else:
print("执行完成")
三、流程控制之for循环
for i in range(10):
缩进代码块
for 循环的 break与continue 用法和 while 循环一样
range()详解
start: int (开始 默认为0)
stop: int(结束)
step: int(步长 默认为1)
eg
九九乘法口诀
for i in range(1,10):
for j in range(1,i+1):
print("%s X %s = %s"%(i,j,i*j),end=" ")
print()
的实现
max_level=5
for current_level in range(1,max_level+1):
for i in range(max_level-current_level):
print(' ',end='') #在一行中连续打印多个空格
for j in range(2*current_level-1):
print('*',end='') #在一行中连续打印多个空格
print()