您的位置:首页 > 编程语言 > Python开发

python学习之登陆接口

2014-05-20 11:57 369 查看


要求:

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

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...'

优化方面,可以一次写入变量和空格,登陆之后添加更多功能,语句流程有待进一步提高。之后会附加教程上的代码,敬请期待。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python