python第一次周末大作业

#############################作业#############################

1. 三次登录验证

完成用户登录验证
要求:
1. 系统自动生成4位随机数. 作为登录验证码. 直接用就好. 这里不用
纠结
from random import randint
num = 0
verify_code = ""
while num < 4:
verify_code += chr(randint(65, 90))
num += 1
print(verify_code) # 四位随机验证码
2. 用户输入用户名和密码还有验证码.
3. 用户可以有三次登录的机会. 但是验证码如果输入错误. 不计算在
内
from random import randint
count = 1
while count <= 3:
    num = 0
    verify_code = ""
    while num < 4:
        verify_code += chr(randint(65, 90))
        num += 1
    # print(verify_code)

    # 用户登录
    username = "alex"
    password = "123"

    # 用户输入
    uname = input("请输入你的用户名:" )
    upwd = input("请输入你的密码:")
    vi_code = input(f"请输入你的验证码{verify_code}:")

    # 判断验证码
    if vi_code.upper() == verify_code.upper():
        print("验证码正确")
        # 判断用户名和密码
        if uname == username and upwd == password:
            print("登录成功")
            break
        else:
            print("登录失败(还剩下%s次机会)" % (3-count))
            count += 1  # ????  000 000  - 999 999
    else:
        print("验证码错误")

 

2.# 商品信息:
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
# 用户信息:
user = {"username":"alex", "password": "123456"}


# 功能要求:
# 1、启动程序后,输入用户名密码后,让用户输入工资,然后打印商品列表
# 2、用户根据商品编号购买商品
# 3、用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒
# 4、退出时,打印已购买商品和余额

# 准备一个购物车
# 购物车:[{id:编号, name:名称, price:商品价格, totle:数量}]
# [{id:0, name:"电脑", price:1999, totle:7},
# {id:3, name:"美女", price:998, totle:2}]

goods = [
    {"name": "电脑", "price": 1999},
    {"name": "鼠标", "price": 10},
    {"name": "游艇", "price": 20},
    {"name": "美女", "price": 998},
]
# 用户信息:
user = {"username":"alex", "password": "123456"}
shoppingcart = []
while 1:
    uname = input("请输入你的用户名:")
    upwd = input("请输入你的密码:")
    if uname == user['username'] and upwd == user['password']:
        print("登录成功!")
        money = int(input("请输入你兜里钱:"))

        while 1:
            for i in range(len(goods)):
                print(i+1, goods[i]['name'], goods[i]['price'])
                # 1 键盘 100  0
                # 2 鼠标 200  1
                # 3 美女 1000 2
            # 2
            num = int(input("请输入你要购买的商品编号:")) # 我没判断是否是数字
            # 还原回索引
            index = num - 1
            # 获取到购买的商品
            good = goods[index]
            # 判断是否可以购买该商品
            if money >= good['price']:
                # 判断是否已经购买过该商品, 如果购买过. 数量+1 没买过 加到购物车里
                for el in shoppingcart: # el:你已经够买过的商品
                    if el['id'] == index: # 买过
                        el['totle'] += 1 # 数量+1
                        break # 继续显示商品列表
                else: # 没买过
                    shoppingcart.append({"id": index, "name": good['name'], "price": good['price'], "totle": 1})
                money -= good['price']  # 扣钱
                print("购买成功!!, 您的余额是%s" % money)
            else:
                print("对不起. 您的余额已不足!, 您的余额还剩%s" % money) # 可以充值也可以不充值

            # 是否继续购物
            isContinue = input("请问是否继续购买商品(Y/N)")
            if isContinue.upper() == "N":
                # 不买了
                # 打印购买的商品和余额
                for g in shoppingcart:
                    print(g['name'], g['price'], g['totle'])
                print("你还剩下%s" % money)
                # 程序退出
                exit() # 程序退出
    else:
        print("登录失败!")

 3 质数, 只能被1和自身整除的数, 我们就从2开始除. 除到n-1结束

num = int(input('请输入一个数字:'))
if num <= 1:
print('这不是质数')
elif num == 2:
print('这是一个质数!')
else:
i=2
while i < num:
if num%i == 0:
print('这不是一个质数')
break
i += 1
else:
print ('这是一个质数!')


n=int(input('请输入一个数字:'))
for i in range(2,n):
if n %i ==0:
print('不是质数')
break #有了break就不会执行后面的else
else:
print('是一个质数')

4.输入数字个数,判断这个数字是几位数(用算法实现)

num=int(input('请输入一个数:'))
i=0
while num >=1:
    num=num/10
    i+=1
print(f'这个数是{i}位数')

 

posted @ 2018-12-04 21:21  崽崽1573  阅读(361)  评论(0编辑  收藏  举报