python学习之登陆接口

要求:

编写登陆接口,输入用户信息,认证成功后显示欢迎信息,输错三次锁定用户。

python对文件的基本操作:

>>> import os
>>> f = file('user.txt','w') #有r(默认),w,a参数,r需要文件存在,w重写,a添加
>>> f.write('ankse 123')
>>> f.close()
>>> os.system('more user.txt')
ankse 123
0
>>> f = file('user.txt','a')
>>> f.write('\nwheel 234')
>>> f.close()
>>> os.system('more user.txt')
ankse 123
wheel 234
0
>>> f = file('user.txt')
>>> f.read()
'ankse 123\nwheel 234'
>>> f.read()
''
>>> f = file('user.txt')
>>> s = f.read()
>>> s
'ankse 123\nwheel 234'
>>> s
'ankse 123\nwheel 234'
>>> f = file('user.txt')
>>> for line in f.readlines(): print line,
... 
ankse 123
wheel 234

列表的概念:

>>> names = ['first','second','third']
>>> names[1]
'second'
>>> print type(names)
<type 'list'>
>>> f = file('user.txt')
>>> for line in f.readlines(): print line[0],
... 
a w
>>> print type(line)
<type 'str'>
这里读到的内容仅仅是第一个字母,牵扯到字符串转列表
>>> l = 'ankse 123' 
>>> l.split()
['ankse', '123']
>>> a = l.split()
>>> a
['ankse', '123']
>>> l.split('1')#按照1分开转换,空格会保留
['ankse ', '23']
这时,就可以对文件这样操作

>>> for line in f.readlines(): print line.split()[0],
... 
ankse wheel

程序如下,如下功能未添加:

1、账号注册时检测是否存在,问题是在没有文件时不能r进行遍历查询

2、输入3次错误密码锁定,问题是修改某一行的值

3、后续功能,修改密码等等

#!/usr/bin/env python

import tab

user_file = 'user.txt'
#lock_file = 'lock.txt'

print '''
        1:register
        2:login
'''

choise = raw_input('what do you want to do? ').strip()
if choise == '1':
        name = raw_input('please input your username: ').strip()
        #f = file(user_file,'r+')
        #for line in f.readlines():
        #        if name == line.split()[0]:
        #               print 'this user name has been used,try another!!!'
        #       else:
        passwd = raw_input('please input your password: ').strip()
        f = file(user_file,'a')
        f.write(name)
        f.write(' ')
        f.write(passwd)
        f.write(' ')
        f.write('3')
        f.write('\n')
        f.close()
elif choise == '2':
        name = raw_input('what is your user name? ').strip()
        f = file(user_file)
        flag = 0
        for line in f.readlines():
                if name == line.split()[0]:
                        flag = 1
                        if line.split()[2] != '0':
                                passwd = raw_input('what is your password? ').strip()
                                if passwd == line.split()[1]:
                                        print 'login success...'
                                else:
                                        time = str(int(line.split()[2])-1)
                                        #print time
                                        #line.replace("line.split()[2]", "time")
                                        #f = file(user_file,'w') 
                                        #print line
                                        #f.writelines(line)
                                        print 'password incrrect...you can try %s times' %time
                        else: print 'your username has been locked...'
        if flag == 0:
                print 'no this user...'
else:
        print 'input error...   Stay tuned for more...'

优化方面,可以一次写入变量和空格,登陆之后添加更多功能,语句流程有待进一步提高。之后会附加教程上的代码,敬请期待。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值