python编写登录接口(上)

发布时间:2019-07-19 09:56:49编辑:auto阅读(1653)


    中途经过了好几天都没有动手了,得坚持下去啊
    刚看了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、若账号错误,对账号的锁死的处理该如何修改呢?
    现在还没一点思路呢    





关键字