1 #!/usr/bin/env python3
 2 # -*- coding:utf-8 -*-
 3 while True:
 4     #初始系统
 5     operation = input('''
 6     ------------------------------------
 7     欢迎进入管理系统
 8     请选择您需要的操作
 9     1.注册
10     2.登陆
11     ------------------------------------
12     ''')
13
14     #用户注册
15     if operation == '1':
16         #读取账号文件
17         account_file = open('register_file.txt', 'a+')
18         account_file.close()
19         account_file = open('register_file.txt','r+')
20         account_list = account_file.readlines()
21         #提示用户输入注册的账号
22         while True:
23             name = input('请输入需要注册的用户名')
24             for account_line in account_list:
25                 (user,passwd) = account_line.strip('\n').split()
26                 if name == user:
27                     print('该用户名已存在')
28                     break
29             else:
30                 password = input('请输入需要注册的密码')
31                 account_file.write(name + ' ' +password + '\n')
32                 account_file.close()
33                 break
34     #用户登录
35     elif operation == '2':
36         name = input('请输入用户名')
37         lock_account = open('lock_file.txt', 'a+')
38         lock_account.close()
39         lock_account = open('lock_file.txt','r+')
40         lock_list = lock_account.readlines()
41         lock = 0
42         for lock_line in lock_list:
43             if name == lock_line.strip('\n'):
44                 lock =1
45                 print('该用户已被锁定')
46         #读取账户文件
47         if lock == 0:
48             account_file = open('register_file.txt','r+')
49             account_list = account_file.readlines()
50             #循环将账号密码赋给user,passwd两个变量
51             for account_line in account_list:
52                 (user,passwd) = account_line.strip('\n').split()
53                 #账号和用户输入的账户名相等时
54                 if name == user:
55                     i = 0
56                     while i <3:
57                         #提示用户输入密码
58                         password = input('请输入密码')
59                         #密码也相同,则进入系统
60                         if password == passwd:
61                             print('登陆成功,欢迎进入管理系统')
62                             account_file.close()
63                             break
64                         #密码不相同,提示用户重新输入
65                         else:
66                             i += 1
67                             print('密码错误,请重新输入')
68                     #输入次数过多,锁定用户
69                     else:
70                         print('错误次数过多,用户已锁定')
71                         lock_account.write('\n'+user)
72                         account_file.close()
73                         break
74                     break
75             else:
76                 print('用户不存在')
77                 account_file.close()
78         break
79
80     else:
81         print('选项无效,请重新输入')

转载于:https://www.cnblogs.com/kkkkkkkem/p/7219837.html

Account-login相关推荐

  1. [HPM] Error occurred while trying to proxy request /account/login/ from localhost:3000 to http://127

    [HPM] Error occurred while trying to proxy request /account/login/ from localhost:3000 to http://127 ...

  2. Django 新建account应用

    一.应用基本配置 1.在根目录下新建account应用.python manage.py startapp account 2.在项目根目录的项目目录的setting下的INSTALLED_APPS中 ...

  3. Magento: 自定义用户登录导向页面 Redirect Customer to Previous Page After Login

    Configuration Settings – Login to admin panel – Go to System -> Configuration -> CUSTOMERS -&g ...

  4. django03_表单(forms.ModelForm)(login前后台)

    一,创建一个表单 创建一个Form表单有两种方式: 第一种方式是继承于forms.Form,的一个子类,通过在form中选择你需要的类型来规定表单之 中字段的类型 class LoginForm(fo ...

  5. ABP Vnext 学习02-授权中心 重写Login 页面

    前言 实现的方式也有其他的方式 可能不是最优 如果有兴趣的可以自己研究 ; 实现思路 1 首先看他们Abp 的官方文档 其中介绍的已经适用于一部分场景 官方文档的三种介绍 1 仅重写页面模型(C#)端 ...

  6. Google account

    1.google account login是属于哪种方式, client login? OAuth? Authsub? 2.google app(gmail, calender, map edito ...

  7. ASP.NET MVC 4 (十三) 基于表单的身份验证

    在前面的章节中我们知道可以在MVC应用程序中使用[Authorize]特性来限制用户对某些网址(控制器/控制器方法)的访问,但这都是在对用户认证之后,而用户的认证则依然是使用ASP.NET平台的认证机 ...

  8. 2.4.4.1、Django新建APP(acounts)

    $django-admin.py startapp accounts 在oss/accounts修改forms.py(新建)和views.py如下: 注:绿字部分为注释 views.py ###### ...

  9. thinkphp5框架一小时搭建一个php后端(1)

    开发环境使用phpstudy 编辑器用sublime 数据库navicat 需要下载composer 先配置好本地域名,然后需要我们将资源引入到项目里面 下载地址www.layui.com. layu ...

  10. Java项目:前台后台玩具商城系统(java+JSP+SSM+Springboot+Jsp+maven+Mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统主要实现的功能有: 网上商城系统,前台+后台管理,用户注册,登录,商品展示,分组展示,搜索,收货地址管理,购物车管理,添 ...

最新文章

  1. QT 实用代码片段 (持续更新)
  2. tensorflow.unstack() 与 tensorflow.stack()
  3. 云从科技在渝布局人工智能大数据平台
  4. Qt只QStringList的简单使用方法
  5. android WebView的简单使用
  6. 嵌入式 Linux下永久生效环境变量bashrc
  7. Java StringBuilder reverse()方法与示例
  8. Tomcate服务器的基本知识概括总结及安装目录概括
  9. C++编程--函数与委托(2)
  10. 数据结构之线索化二叉树
  11. MyBatis的XML配置文件(三)
  12. centos中,tomcat项目创建文件的权限研究
  13. GIS | 坐标系统与地图投影
  14. 解决Jmeter CA证书不受信任无法问题(导致代理服务器无法录制脚本)
  15. css设置全局内边距为0,重置CSS - 将填充和边距设置为0?
  16. Kettle Carte模式
  17. pikachu靶场通关指南
  18. 浏览器内核、webview内核
  19. 基于Matlab遗传算法工具箱解决物流中心选址
  20. CMOS图像传感器——Remosaic技术

热门文章

  1. 云平台之实例类型与故障迁移
  2. Unity 接入腾讯Bugly
  3. IGV变异可视化设置要点
  4. 完全用Linux工作
  5. pythonds18b20_[python]树莓派第一课之DS18B20温度传感器
  6. java消除噪声数据,高光谱图像去噪相关资源汇总(常用对比算法+数据集+评价指标)...
  7. Pyrhon pyqt5 视频转字符画
  8. 栈evaluate-reverse-polish-notation-leetcode练习题
  9. python中e怎么计算_蒙特卡洛法计算自然常数e——python编程及可视化
  10. HTTP协议以及返回状态码