中途经过了好几天都没有动手了,得坚持下去啊
刚看了Alex老师的视频,其中有个题目如下:
编写登录接口
-输入用户密码
-认证成功后显示欢迎信息
-输错三次后锁定

# -*- coding: cp936 -*-
#用户名保存在一个文件名为user.txt文件中
import os,string
tmp=file('C:\Users\hityxg\Desktop\user.txt')
username=file('C:\Users\hityxg\Desktop\username.txt','w')
b=tmp.readlines()
for info in b:
   name=info.split()[0]
   username.write(name+'\n')
username.close()

findname=file('C:\Users\hityxg\Desktop\username.txt')
temp=findname.readlines()

#e=file('C:\Users\hityxg\Desktop\username.txt')

#d=e.readlines()
#print d

a=raw_input('plz enter your username:')

num=temp.index(a+'\n')
password=raw_input('plz enter your password:')

#判断密码正确与否

for i in range(3):
   if a+' '+password+'\n'==b[num]:
       print 'welcome back'
       break

else:
   print 'you can not enter'    


这是第一次写的,很多思路处于不成熟的阶段,还得额外创建一个文件来储存中间数据。并且最后一个判定用户是否成功登录的算法也是不正确的。这个程序还需要较大的修改和优化。
1、先从后面的错误做起吧,把password=raw_input('plz enter your password:')也放入循环中,即可实现多次判断。
2、如何才能不用前面的那个username.txt文件呢?
可以将中间的username.txt文件用其他来代替,如下:

# -*- coding: cp936 -*-
#用户名保存在一个文件名为user.txt文件中
import os,string
tmp=file('C:\Users\hityxg\Desktop\user.txt')
#username=file('C:\Users\hityxg\Desktop\username.txt','w')
b=tmp.readlines()
###此为修改的关键部分
a=raw_input('plz enter your username:')
for i in range(3):
   if a==b[i].split()[0]:
       num=i
   break
###修改部分

for j in range(3):
   password=raw_input('plz enter your password:')

#判断密码正确与否
   if a+' '+password+'\n'==b[num]:
       print 'welcome back'
       break


else:
   print 'you can not enter'

3、若账号错误,对账号的锁死的处理该如何修改呢?
现在还没一点思路呢