python基本案例实现


案例一:test.txt文件中与输入的用户进行认证,超过3次用户被锁定,且把用户加入锁定的lock.txt文件中。
# 需求点:
# 1.输入用户名、密码
# 2.认证成功后显示欢迎信息
# 3.输错三次后锁定,且写入lock.txt文件;存放用户名、密码的test.txt文件.

# 实现思路:
# 1.判断用户是否锁定
# 2.判断用户是否存在
# 3.判断账号、密码是否正确,如果正确,显示登陆进去,如果不正确三次输入密码机会,三次错误,账号锁定
#获取被锁住的文件
with open("lock.txt",'r') as f:
    lock_user = f.readlines()
#获取用户名、密码
with open('test.txt','r') as f:
    user =f.readlines()
#定义列表用于存放被锁住的用户和已存在的用户
name_pass=[]
user_name=[]
#列表包含被锁住的值
for i in range(lock_user.__len__()):
    name_pass.append(lock_user[i].strip('\n').split(','))
#列表包含用户名,用于判断用户名是否存在
for i in range(user.__len__()):
    user_name.append(user[i].strip('\n').split(','))
#判断输入的用户是否存在锁住的用户中
_username = input("请输入您的用户名:")
count = 0
if _username in name_pass[0]:
    print("%s已经被锁定"%_username)
else:
    if _username in user_name[0]:
        while count < 3:
            _password = input("请输入您的密码:")
            if user_name[count][1]==_password and user_name[count][0] == _username:
                print("欢迎%s登录成功"%user_name[count][0])
                break
            else:
                print("密码错误,请重新输入")
                count += 1
        else:
            print("您输入的内容已经被锁定")
            with open('lock.txt','a+') as f2:
                f2.write(_username)
登录注册程序
PS:文件读取出来的值类型都是list(列表),用户input输入的值都是str(字符串)
案例二:购物车程序
#1.启动程序后,让用户输入工资,然后打印商品列表
#2.允许用户根据商品编号购买商品
#3.用户选择商品后,检测余额是否足够,够就直接扣款,不够就提醒
#4.可随时退出,退出时,打印已购买商品和余额
product_list =[
    ("Bike", 800),
    ("apple", 5000),
    ("watch", 2000),
    ("Mac apple", 12000),
    ("iphone", 8000)
]
shopping_list =[]
salary =input("请输入工资:")
if salary.isdigit():
    salary =int(salary)
    while True:
        for index, item in enumerate(product_list):
            print(index, item)
        user_choice = input("请输入商品编号:")
        if user_choice.isdigit():
            user_choice =int(user_choice)
            if user_choice <len(product_list) and user_choice >=0:
                p_item =product_list[user_choice]
                if salary >= p_item[1]:
                    shopping_list.append(p_item)
                    salary-=p_item[1]
                    print("你买到的商品为%s,余额为%s"%(shopping_list,salary))
                else:
                    print("余额不足")
                    exit()
            else:
                print("商品列表不存在这个编号")
        elif user_choice == 'q':
            for i in shopping_list:
                print(i)
            print("您当前还剩余的余额为%s"%salary)
            exit()
        else:
            print("无效的输入")
            exit()
else:
    print("输入的商品编号无效")
购物车程序
 
案例三:多级菜单
# 三级菜单
# # 可一次选择进入各子菜单
# # 所需知识点:列表、字典
data={
'广东省':{
    "广州":{
        "越秀区":["越秀公园","五羊花灯"],
        "白云区":["白云山","白云机场"],
        "海珠区":["海珠名校","海珠学区房"]
    },
    "佛山":{
        "顺德区":["美的","海尔"],
        "千灯湖区":["景点","开发区"]
    }
},
'四川省':{
    "成都":{
        "城区一区":["锦里","宽窄巷子"],
        "城区二 区":{"熊猫基地","武侯祠"},
        "城区三区":["博物馆","金沙图书馆"],
    },
    "绵阳":{
        "绵阳一区":["绵阳房子","绵阳学校"],
        "绵阳二 区":["绵阳1","绵阳2"],
    }
}
}
exit_flag = False
while not exit_flag:
    for i in data:
        print(i)

    choice = input("请输入第一级菜单:")
    if choice in data:
        while not exit_flag:
            for i2 in data[choice]:
                print(i2)

            choice1 = input("请输入第二级菜单:")

            if choice1 in data[choice]:
                while not exit_flag:
                    for i3 in data[choice][choice1]:
                        print(i3)
                    choice2 = input("请输入第三级菜单:")
                    if choice2 in data[choice][choice1]:
                        for i4 in data[choice][choice1][choice2]:
                            print(i4)
                        choice3 = input("请输入退出菜单:")
                    if choice2 =='q':
                            break
            if choice1 == 'q':
                break
    if choice == 'q':
        break
三级菜单

 

 
 
 
 
posted @ 2019-11-07 19:41  wendyw  阅读(470)  评论(0编辑  收藏  举报