码迷,mamicode.com
首页 > 编程语言 > 详细

PYTHON DAY1

时间:2017-07-07 10:05:24      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:需求   提示   pen   count   ==   lock   encoding   其他   nbsp   

编写登陆接口

基础需求:

  • 让用户输入用户名密码
  • 认证成功后显示欢迎信息
  • 输错三次后退出程序
dic={
‘user1‘:{‘password‘:‘123‘,‘count‘:0},
‘user2‘:{‘password‘:‘123‘,‘count‘:0},
‘user3‘:{‘password‘:‘123‘,‘count‘:0}
}
count=0
while True:
username = input(‘请输入用户名:‘)
if username not in dic:
print("用户名不存在")
continue
if dic[username][‘count‘] >=3:
print("密码尝试次数过多,用户名已锁定,请确认用户名密码是否正确或者用其他用户登录")
continue
userpass = input("请输入密码 :")
if userpass == dic[username]["password"]:
print("登陆成功")
break
elif userpass !=dic[username]["password"]:
print("密码错误,请重新输入")
dic[username][‘count‘] += 1
continue

升级需求:

  • 可以支持多个用户登录 (提示,通过列表存多个账户信息)
  • 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)
dic={‘user1‘:{‘passwd‘:‘123‘,‘count‘:0},
‘user2‘:{‘passwd‘:‘123‘,‘count‘:0},
‘user3‘:{‘passwd‘:‘123‘,‘count‘:0},
‘user4‘:{‘passwd‘:‘123‘,‘count‘:0}
}
count=0
while True:
username=input(‘请入用户名 :‘)
if username not in dic:
print("用户 %s 不存在" %(username))
continue
with open(‘user.txt‘, ‘r‘, encoding=‘utf-8‘) as f:
lock_user = (f.read().split(‘|‘))
if username in lock_user:
print("用户 %s 已锁定" %(username))
break
if dic[username][‘count‘] >= 3:
with open(‘user.txt‘,‘a‘) as f:
f.write(username+‘|‘)
print("用户 %s 已锁定" % (username))
break
password=input("请输入密码 ")
if password==dic[username][‘passwd‘]:
print("登陆成功 %s 欢迎回来" %username)
break
if password !=dic[username][‘passwd‘]:
print(‘密码错误,请重新输入‘)
dic[username][‘count‘]+=1
continue

猜年龄游戏升级版 

要求:

  1. 允许用户最多尝试3次
  2. 每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序
  3. 如何猜对了,就直接退出
correct_answer=30
count=0
input_list=[‘Y‘,‘y‘,‘N‘,‘n‘]

while True:
guess_age=int(input(‘请输入年龄: ‘))
if guess_age==correct_answer:
print("恭喜你,答对了")
break
else:
count+=1
if count > 2:
confirm = input("请输入Y或者y继续,输入N或者n退出(输入其他值,游戏结束):")
if confirm not in input_list:
break
if confirm==‘y‘ or confirm==‘Y‘:
count=0
continue
elif confirm==‘n‘ or confirm==‘N‘:
break

PYTHON DAY1

标签:需求   提示   pen   count   ==   lock   encoding   其他   nbsp   

原文地址:http://www.cnblogs.com/dbkeeper/p/7129247.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!