该脚本实现了,登录,注册,修改密码功能。

#!/usr/bin/env  python
# -*- coding:utf-8 -*-
#pangguoping import os
def login(username,password):
f = open("db",'r')
for line in f:
#print(line,type(line))
line_list = line.strip().split("|")
#print(line_list,type(line_list))
if line_list[0] == username and line_list[1] == password:
return True
return False def register(username,password):
f = open("db",'a')
temp = "\n" + username + "|" + password
f.write(temp)
f.close()
return True
def change_pwd(username):
new_pwd = input('请输入新的密码:')
write_flag = False with open('db', 'r', encoding='utf-8') as old_file, open('db_new', 'w', encoding='utf-8') as new_file:
for line in old_file:
if username == line.strip().split('|')[0] and new_pwd != line.strip().split('|')[1]:
line_list = line.strip().split('|') #把字符串分割成列表
#print(line_list, type(line_list)) # 输出['admin', '789'] <class 'list'>
line_list[0] = username
line_list[1] = new_pwd
#new_line = line_list[0] + '|' + line_list[1]
#print(new_line,type(new_line)) #输出 admin|123 类型是str
new_line = '|'.join(line_list)
new_file.write('%s\n' % new_line) write_flag = True
else:
pass
#new_file.write(line)
#os.remove('db_new')
if write_flag:
os.rename('db', 'db.bak')
os.rename('db_new', 'db')
os.remove('db.bak')
print('账号%s,密码修改成功。' % username)
else:
print('新密码与旧密码不能相同,请重新输入!')
os.remove('db_new') return False def main():
t = input("1:登录:\n2:注册:\n3,修改信息:\n请输入您的操作:")
if t == "":
user = input("请输入用户名:")
pwd = input("请输入密码:")
result = login(user,pwd)
#print(result)
if result:
print("登录成功")
else:
print("登录失败")
elif t == "":
user = input("请输入用户名:")
pwd = input("请输入密码:")
result = register(user,pwd)
if result:
print('注册成功')
else:
pass
elif t == "":
user = input("请输入用户名:")
pwd = input("请输入密码:")
result = login(user,pwd)
if result:
r= change_pwd(user)
#print(r)
else:
print("用户名密码错误,请重新输入!") main()

python-登录-注册-修改密码的更多相关文章

  1. node+mysql+express实现登录/注册/修改密码/删除用户 接口

    实现用户的注册.登录.修改密码.删除用户操作 用到的数据库:nodecms:表:user 目录结构: db目录下存放数据库操作语句: userSQL.js 用户有关的操作语句 router目录 接口路 ...

  2. Web实现数据库链接的登录注册修改密码功能

    /** * Copyright (C), 2017-2017 * FileName: User * Author: ichimoku * Date: 2017/12/5 14:31 * version ...

  3. Email接收验证码,以实现登录/注册/修改密码

    要求 1)实现Email形式的注册功能和相应的登录功能:2)实现忘记密码时的密码找回功能:3)存在数据库中的密码不能以明文形式存放,即建议在浏览器端发送请求前,调用js代码对用户的密码做md5加密 分 ...

  4. Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等

    http://blog.csdn.net/h7870181/article/details/8653865 以前学习过用Scoket 建立聊天,简单的建立聊天是没问题的,但如果要实现多人复杂的聊天,后 ...

  5. openfire Android学习(一)----实现用户注册、登录、修改密码和注销等

    以前学习过用Scoket 建立聊天,简单的建立聊天是没问题的,但如果要实现多人复杂的聊天,后台服务器代码就比较复杂,对于我这新手来讲就比较难了.后来在网上看到用openfire做服务器,利用强大的Sm ...

  6. selenium(python)登录时账号密码错误提示语

    selenium(python)登录时账号密码错误提示语的获取 可以用text

  7. 测试点常用用例设计(登录、修改密码、输入框、上传视频、XSS、URL篡改)

    1.无效-视频文件测试点: 视频大小过大 视频大小过小 视频名称过长 视频名称包含特殊字符 视频名称包含中文.中英混合 视频文件格式错误 视频文件重复性上传 2.有效-视频文件测试点: 选择符合要求的 ...

  8. 使用手机登录OWA修改密码的问题

    最近发现使用手机端登录OWA,安卓手机是可以修改密码的,如图1,但是iPhone就不成,safari和第三方都不可以,如图二. 图一 图二

  9. Mysql 免密码登录,修改密码及忘记密码操作

    ----免密码登陆 方式一 my.cnf增加[client]标签 [client] user="root" password="你的密码" 单对定义不同的客户端 ...

随机推荐

  1. ArcGis ToolBar为灰色

    问题描述:添加完导航按钮,测试时发现按钮一直都是灰色的,不可用状态. 可能原因:跟控件添加的顺序有关,导致toolbar跟map控件无法正确关联. 解决方案:删掉toolBar,重新添加.

  2. 图片设置3D效果

    /** * 图片绘制3d效果 * @param srcImage * @param radius * @param border * @param padding * @return * @throw ...

  3. php设计模式——单例模式

    单例模式概念 单例模式是指整个应用中类只有一个对象实例的设计模式. 单例模式的特点 一个类在整个应用中只有一个实例 类必须自行创建这个实例 必须自行向整个系统提供这个实例 php中使用单例模式的原因 ...

  4. [亲测有效] - Mac下屏蔽优酷广告最简单的方法

    这里不和圣母婊争论该不该屏蔽广告,仅给出可行方法. Windows下的Adsafe,万能的去广告神器!可惜Mac下没有这款软件,Adblock之流在国内基本是个玩具,但是我们可以通过修改HOST文件达 ...

  5. C++编译指令#pragma pack的配对使用

    #pragma pack可以用来指定C++数据结构的成员变量的内存对齐数值(可选值为1,2,4,8,16). 本文主要是强调在你的头文件中使用pack指令要配对使用,以避免意外影响项目中其他源文件的结 ...

  6. 微信支付:redirect_uri参数错误 的解决办法

    redirect_url参数错误: 报这个错误,说明你的公众号后台授权设置有问题(一般有两处) 一:检查授权目录 答:支付授权目录是网站发起请求的页面所在目录,并且必须是能通过url地址访问的(与真实 ...

  7. JSONP的客户端的具体实现

    JSONP的客户端的具体实现 1.远程调用一个js,代码如下:         <script type="text/javascript">         var ...

  8. CSS特殊性

    样式的优先级取决于特殊性,特殊性为0,0,0,0 Ø每个元素或伪元素选择器贡献特殊性为 0,0,0,1 Ø每个类.伪类或者属性选择器的特殊性为 0,0,1,0 Ø每个ID选择器的特殊性为 0,1,0, ...

  9. php 如何写入、读取word,excel文档

    如何在php写入.读取word文档 <? //如何在php写入.读取word文档 // 建立一个指向新COM组件的索引 $word = new COM("word.applicatio ...

  10. php 之 数据访问 增删改查

    一.建立主页面: <title>主页面</title> </head> <body> <h1>主页面</h1> <tabl ...