#############################作业#############################
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}位数')
















