py-kid

  我先说明下此程序的大概情况,就是输入用户名和密码,输错三次后把账户添加到黑名单里,输入正确的话可进入程序随意输入,但输入quit的时候退出程序。虽然程序相当简单,但对于我这种码盲的人来说也是困难重重,之前刚看到这需求的时候,感觉还行,能有个大概思路觉得不太难,后来写的时候我发现图样图森破啊~当初就是把要求一步一步实现,后期再优化,结果我发现我的想法错了,写了一大堆代码,导致后来调试的时候非常困难,但自己挖的坑跪着也要填平,中间过程太痛苦,后来我就觉得长痛不如短痛,直接重写,虽然第一次浪费了很多时间,但也给我第二次提供了很好的思路,第二次写完时只用了相当于第一次一半的代码,对于这次写的代码还是比较满意的,最后总结下感受,做技术的,就是需要不断的去探索,起初方法笨没关系,先按自己想的去做,实在无解再去查资料,只要能掌握了这项技术,后面自然会做出相应的优化,还有就是要执着,自己的想法一定要实现,有需求完成需求,没需求创造需求,相信自己,别人能做的我也可以!

下面是我自己写的代码,不一定是最优方案,但这是我自己的思路:

 1 #登录判断,输入正确登录成功,登录后输入:"exit"退出程序,输错三次账户被锁定,然后把账号记录在b_user.txt中
 2 Start_frequency = 1
 3 End_frequency = 3
 4 #读取文件内容
 5 Bl_list = open(\'C:/Users/Tanglei/Desktop/b_user.txt\', \'r\')
 6 b = Bl_list.read()
 7 #账号密码字典
 8 User_dic ={\'user1\':{\'pw\':\'1\',\'status\':2},
 9            \'user2\':{\'pw\':\'2\',\'status\':2}}
10 #程序从这里开始
11 while Start_frequency < End_frequency:
12     Login_Name = input(\'请输入用户名:\')
13     Login_PassWord = input(\'请输入密码:\')
14 #判断输入的用户名是否在黑名单里
15     if Login_Name in b:
16         print(\'%s账户已被锁定!\'%Login_Name)
17         exit()
18 #判断用户名和密码均正确,提示登录成功,输入“quit”退出
19     if Login_Name in User_dic and Login_PassWord == User_dic[Login_Name][\'pw\']:
20         print(\'登录成功\')
21         while True:
22             Ex = input(\'请输入:\')
23             if Ex == \'quit\':
24                 exit()
25 #判断输入错误次数,3次后退出程序
26     elif 0<User_dic[Login_Name][\'status\']:
27         print(\'----------------------------------------------\')
28         print(\'用户名或密码错误,还有%s机会\'%User_dic[Login_Name][\'status\'])
29         User_dic[Login_Name][\'status\'] -= 1
30 #输入错误次数满3次,把用户名记录在黑名单里
31     else:
32         print(\'输入错误次数较多,请稍后再试\')
33         Bl_list = open(\'C:/Users/Tanglei/Desktop/b_user.txt\', \'w\')
34         Bl_list.write(\'%s\' % Login_Name)
35         Bl_list.close()
36         exit()

 

分类:

技术点:

相关文章: