|
|
发表于 2020-2-19 00:27:51
|
显示全部楼层
#你的问题在于while not islogin。当你login以后,not islogin是False,所以后面的语句不会执行。 我已经帮你改过来了,你再试试!
- import random
- islogin = False # 用于判断用户有没有登陆的变量 默认没有登陆
- # 添加购物车
- def add_shoppingcart(goodsName):
- while True:
- if islogin:
- if goodsName:
- # 登录的
- print('成功将{}加入购物车中!'.format(goodsName))
- else:
- print('没有选中任何商品!')
- break
- else:
- # 没有登陆
- answer = input('用户没有登录!是否登录用户?(y/n)')
- if answer == 'y':
- login()
- else:
- print('很遗憾!不能添加任何商品!')
- # 生成输验证码
- def generate_checkcode(n):
- s = '0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM'
- code = ''
- for i in range(n):
- ran = random.randint(0, len(s) - 1)
- code += s[ran]
- return code
- # 登陆
- def login():
- global islogin
- while not islogin:
- username = input('请输入用户名')
- password = input('请输入密码:')
- code = generate_checkcode(4)
- print('验证码是:', code)
- code1 = input('请输入验证码:')
- if code.lower() == code1.lower():
- if username == 'lijiaqi' and password == '123456':
- print('用户登录成功')
- islogin = True
- break
- else:
- print('用户名或密码有误!')
- else:
- print('验证码输入有误!')
- # 添加购物车
- add_shoppingcart('阿玛尼唇釉')
复制代码 |
|