python登录注册程序_Python3 注册+登录程序的一些思路

copycode.gif

1 #expandtion.txt文件里保存了账号和密码,这里定义一个函数,以dict的形式提取数据,用于注册时候判断

2 def get_user_pass(file):

3 user_passwd = {}

4 with open(file, 'r') as f:

5 for d in f:

6 for kv in [d.strip().split(',')]:

7 user_passwd[kv[0]]=kv[1]

8 return user_passwd

9 # 定义一个函数,判断输入的参数是否为空,为空的话继续输入,直到输入不为空为止

10 def input_data(data_type,get_data):

11 while True:

12 get_data=input('请输入%s:'%data_type)

13 if len(get_data)==0:

14 continue

15 else:

16 break

17 return get_data

18 user_pass =get_user_pass('expandtion.txt')

19 while True:

20 username=input_data('注册账号','name')

21 # 判断注册账号是否存在,已存在的话持续循环

22 if username in user_pass.keys():

23 print('您输入的账号已存在,请重新输入:')

24 continue

25 else:

26 password = input_data('账号密码', 'name')

27 confirm_pass=input_data('确认密码','name')

28 # 判断确认密码和密码是否一致

29 if password!=confirm_pass:

30 print('您输入的确认密码与密码不一致,请重新输入:')

31 continue

32 else:

33 print('恭喜您注册成功,请记住您的注册信息:\n您的账号是:%s\n您的密码是:%s'%(username,password))

34 break

35 #将新注册的用户写入expandtion.txt保存

36 with open('expandtion.txt', 'a') as f:

37 f.write(username+','+password+'\n')

38 #因为刚才有注册,所以要重新调用文件读取函数获取账号信息

39 user_pass =get_user_pass('expandtion.txt')

40 #设置i用来记录登录信息输入错误次数啊

41 i=1

42 while i<4:

43 print('第%s次登录,登录超过三次仍然失败,将不允许登录,请三思!'%i)

44 i+= 1

45 get_user=input('please input username:')

46 get_pass=input('please input password:')

47 #判断账号是否存在expandtion.txt文件中

48 if get_user not in user_pass.keys():

49 print('账号或密码有误,请重新输入!')

50 continue

51 else:

52 #根据账号获取到该账号的密码

53 password = user_pass[get_user]

54 # 判断密码是否和对应的账号匹配

55 if get_pass!=password:

56 print('账号或密码有误,请重新输入!')

57 continue

58 else:

59 print('欢迎%s登录!'%get_user)

60 break

61 #登录超过三次时给出提示

62 else:

63 print('账号或密码错误次数已超过三次,请明年再来登录!')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值