流程控制——练习

今日作业:

整理今日内容及博客

1.根据用户输入内容打印其权限
'''
jason --> 超级管理员
tom --> 普通管理员
jack,rain --> 业务主管
其他 --> 普通用户
'''

# coding:utf-8
'''
    jason --> 超级管理员
    tom  --> 普通管理员
    jack,rain --> 业务主管
    其他 --> 普通用户
'''

username = input('username>>>:')        # 定义变量接收用户名
if username == 'jason':                 # 判断接收的数据是否成立 
    print(username,'--> 超级管理员')      # 成立执行
elif username == 'tom':                 # 判断接收的数据是否成立 
    print(username, '--> 普通管理员')     # 成立执行
elif username == 'jack' or username =='rain':   # 判断接收的数据是否成立 
    print(username, '--> 业务主管')         # 成立执行
else:                                   # 都不成立执行 
    print(username, '-->普通用户')

2.编写用户登录程序
要求:有用户黑名单 如果用户名在黑名单内 则拒绝登录
eg:black_user_list = ['jason','kevin','tony']
如果用户名是黑名单以外的用户则允许登录(判断用户名和密码>>>:自定义)
eg: oscar 123

'''
2.编写用户登录程序
 要求:有用户黑名单 如果用户名在黑名单内 则拒绝登录
    eg:black_user_list = ['jason','kevin','tony']
 如果用户名是黑名单以外的用户则允许登录(判断用户名和密码>>>:自定义)
    eg: oscar 123
'''
black_user_list = ['jason', 'kevin', 'tony'] # 定义黑名单变量
count = 0                                       # 定义一个计数器,作用是控制循环次数
while count < 3:                            # 当count小于3 就执行
    username = input('请输入你的用户名:')       # 定义一个input()接收用户名
    password = input('请输入你的密码:')        # 定义一个input()接收密码
    if username in black_user_list:       # 看输入的用户名是否在黑名单里 in是看在不在的判断
        print('兄弟你黑了!重新输入!')           # 条件成立的话输出
    if username == 'oscaar' and password == '123': #    看输入的用户名和密码对不对
        print('登陆成功!')                  # 条件成立的话输出
        break                                   # 跳过循环
    else:                                   # 条件不成立的话执行下面代码
        print('账号密码错误,请重新输入!')      # 输出
        count += 1                          # 让上面定义的count值加1,用来控制只能输错三次

3.编写用户登录程序
用户如果登录失败 则只能尝试三次
用户如果登录成功 则直接结束程序

第二题给做了

4.猜年龄的游戏
假设用户的真实年龄是18 编写一个猜年龄的游戏 获取用户猜测的年龄
基本要求:可以无限制猜测 每次猜错给出提示(猜大了 猜小了) 猜对则结束程序
拔高练习:每次猜测只有三次机会 一旦用完则提示用户是否继续尝试 用户通过输入n或者y来表示是否继续尝试 如果是y则继续给用户三次猜测机会 否则结束程序

基础:

# 定义初始的年龄为18
first_age = 18              
# 定义变量接收用户输入的数据,eval(),可以让输入的字符串类型转换
guess_age = eval(input('请输入你猜的年龄:'))
# while True 不碰到break 一直循环下去!
while True:
    # 判断用户输入的数据是否与初始一样,一样则执行子代码而后跳出循环,不一样执行下面的同级代码
    if guess_age == first_age:
        print('猜对了!')
        break
    # 同用户输入的数据与初始作比较,小于就执行print
    elif guess_age <18:
        print('猜小了!')
    # 上面两个都不成立,则执行本条
    else:
        print('猜大了!')

拔高:

# 定义初始的年龄为18
first_age = 18
# 定义count变量作为初始判断
count = 0
# while True 不碰到break 一直循环下去!
while True:
# 定义变量接收用户输入的数据,eval(),可以让输入的字符串类型转换
    guess_age = eval(input('请输入你猜的年龄:'))
# 判断用户输入的数据是否与初始一样,一样则执行子代码而后跳出循环,不一样执行下面的同级代码
    if guess_age == first_age:
        print('猜对了!')
# 跳出循环
        break
# 同用户输入的数据与初始作比较,小于就执行print
    if count < 2:
        if guess_age < 18:
            print('猜小了!')
            count += 1
            continue
            # 上面两个都不成立,则执行本条
        else:
            print('猜大了!')
            count += 1
            continue
    else:
        again_game =input('还要继续游戏吗?y/n')
        if again_game == 'y':
            # 将count的值归0
            count = 0
            continue
        if again_game == 'n':
            break
posted @ 2022-09-27 19:57  负剑远游行归来仍少年  阅读(49)  评论(0)    收藏  举报