第四章(一) 流程控制(if+while)

流程控制

流程控制即控制事物的执行流程
	任何使用执行流程只有三种情况
    	1.顺序结构
        	自上而下依次运行
        2.分支结构
        	在运行中根据条件的不同会执行不同的流程
        3.循环结构
        	在运行设置好的代码反复执行
    

image

1.顺序结构

image

2.分支结构

image

3.循环结构

image

if结构

image

1.单if分支结构

# 1.单if分支结构
'''
 if 条件:
    条件成立执行子代码块

 1.条件都会转成布尔值  从而判断子代码是否执行
 2.在Python中  缩进表示代码的所属关系
 3.并不是所有的代码都有子代码
 4.同属于某个代码的多行子代码 必须要保持相同的缩进量
        在Python中推荐子代码使用4个空格来缩进
 ps:小技巧 上一行代码的结尾如果是冒号 那么下一行代码必缩进
'''
	# age = 36
	# if age < 30:
	#     print('小姐姐好')

2.if与else连用

# 2.if与else连用
	#如果年龄小于28  叫小姐姐 否则交 不好意思认错人了
	# age = 30
	# if age < 28:
	#     print('小姐姐好')
	# else:
	#     print('认错了,告辞')

3.if后面的条件可以是多个

# 3.if后面的条件可以是多个
	# age = 25
	# height = 99
	# high = 160
	# rich = True
	# if age < 26 and height < 100 and high >155 and rich:
	#     print('nice')
	# else:
	#     print('oh...')

4.多分支if判断 if elif else

# 4.多分支if判断 if elif else
	# score = 1
	# if score > 90:  # 条件1成立执行的子代码块
	#      print('优秀')
	# elif score <= 90 and score > 80:  # 条件一不成立 条件2成立之后执行子代码块
	# elif score > 80:  简化代码,一个if只有一个结果,满足一个条件即可。
	#     print('良好')
	# elif score <= 80 and score >= 60:  # 条件1,2都不成立 条件3成立之后执行子代码块
	# elif score >= 60:
	#     print('中等')
	# elif score < 60:
	#     print('不及格')
	# else:  # 条件都不满足
	#     print('不及格')

5.if嵌套判断

# 5.if嵌套判断
	# if 2 > 1:
	#     if 3 > 2:
	#         print('1')
	#     else:
	#         print('寄了')
	# else:
	#     print('gg')

6.if语句练习

# 习题1:编写一个用户登录 用户名是jason 密码是123
# 用户如果正确打印来宾三位 否则登录失败
# username = input('请输出用户名:')
# passd =input('请输入密码:')
# if username == 'jason' and passd == '123':
#     print('来宾三位')
# else:
#     print('爬')

# 习题2.根据用户名的不同打印不同身份
# jason 管理员 tony安保人员 kevin财务 jack销售 其他普通押员工
# name = input('输入用户名>>:')
# if name == 'jason':
#     print('管理员')
# elif name == 'tony':
#     print('安保')
# elif name == 'kevin':
#     print('财务')
# elif name == 'jack':
#     print('销售')
# else:
#     print('普通员工')

image

while循环

image

while基本理解

# 语法结果
"""
while 条件:
	条件成立之后循环执行的子代码块
"""
# count = 0
# while count < 3:
#     username = input('请输入用户>>>:')
#     passwd = input('请输出密码>>>:')
#     if username == 'jason' and passwd == 123:
#         print('success')
#         break
#     else:
#         print('请重新输入')
#         print('当前输错%d次' %(count+1))
#     count +=1

while + break

# while + break
# count = 0
# while count < 3:
#     username = input('请输入用户>>>:')
#     passwd = input('请输出密码>>>:')
#     if username == 'fq' and passwd == '234':
#         print('success')
#         while True:
#             # 判断用户是否想退出
#             cmd = input('请输入您的指令>>>:')
#             if cmd == 'q':
#                 break  # 结束小循环
#             print('正在执行您的指令:%s' %cmd)
#         break  # 结束大循环
#     else:
#         print('请重新输入')
#         print('当前输错%d次' %(count+1))
#     count +=1

while+if习题练习

#   习题1.用户可以有三次猜错的机会 过程中猜对直接退出

count = 3
age = 70
while count > 0:
    tmp = input('一起过来猜数字>>>:')
    tmp = int(tmp)
    if tmp == age:
        print('恭喜猜对了!')
        break
    else:
        print('还可以再试%d次' %(count-1))
        count -=1
print('游戏结束')

#   习题2.三次机会用完,提示是否选择继续,如果是啧再给三次机会

again = True  # 大循环条件
age = 70
count = 3  # 小循环条件
# 开始进入循环,只要again不是False,循坏就不会停止,内部嵌套小循环。
while again:
    # 循环条件 count = 3 循环三次
    while count > 0:
        tmp = input('来猜:')
        tmp = int(tmp)
        if tmp == age:
            print('猜对了,游戏结束。')
            again = False
            break
        else:
            print('还可以再试%d次' %(count-1))
            count -= 1
    # 小循环结束了,此时在答错答案 就是 again 还是True的情况下 进行判断
    if again:
        print('再来三次?是选1,否2')
        choose = input('选择1或者2')
        choose = int(choose)
        # 小循环的判断条件为count > 0,此时选择1的话,就是count + 3 小循环再循环3次
        if choose == 1:
            count +=3
        # 选2 就是把大循环的判断条件改为False
        elif choose == 2:
            again = False
            break
        else:
            print('1 or 2')


#             上面的是我笨比的解法!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
count = 3
age = 10
while count > 0:
    count -=1
    tmp = int(input('输入:'))
    if tmp > 10:
        print('大了')
    elif tmp < 10:
        print('小了')
    else:
        print('✔了')
        break
    if count == 0:
        again = input('yes or no:')
        if again == 'yes':
            count = 3
        else:
            print('gg')

image

posted @ 2021-11-04 17:08  hai起奈  阅读(122)  评论(0编辑  收藏  举报