python作业(二)实现注册功能和登陆功能
#1、实现注册功能
输入:username、passowrd,cpassowrd
#最多可以输错3次
#3个都不能为空
#用户名长度最少6位, 最长20位,用户名不能重复
#密码长度最少8位,最长15位
#两次输入的密码要一致
#注册成功之后,要写到文件里面
#2、登陆功能实现:
#3次
用户名和密码你去文件里面取
一、注册
f=open('users.txt','a+')
f.seek(0)
res=f.read()
all_users=[]
for i in res.split('/n'):
username=i.split(',')[0]
all_users.append(username)
for i in range(3):
username=input('username:')
pwd=input('pwd:')
cpwd=input('cpwd')
if len(username)<6 and len(username)>20:
print('用户名输入大于六位,小于20位')
elif len(pwd)>8 and len(pwd)<15:
print('密码输入最小8位,最大15位')
elif username in all_users:
print('用户名已注册')
elif pwd!=cpwd:
print('两次输入不一致')
else:
info='%s,%s' %(username,pwd)
f.write(info)
print('注册成功')
break
else:
print('输入次数太多')
f.close()
二、登录
1、第一种方法:直接取文件中的值进行对比
f=open('users.txt','r')
res=f.read()
allnamep=res.split('\n')
for i in range(3):
username=input('username')
pwd=input('pwd')
user_info=username+','+pwd
if user_info not in allnamep:
print('帐号密码不存在')
else:
print('登陆成功')
f.close()
2、第二种方法:将文件读取出来,存入字典,从字典中取值进行取比
userall={}
f=open('users.txt','r')
res=f.read()
for i in res.split('\n'):
if i.strip()!='': #判断res不等于空的行
username = i.split(',')[0]
pwd=i.split(',')[1]
userall[username]=pwd
#print(userall)
for i in range(3):
username=input('username:')
pwd=input('pwd:')
if username in userall:
if pwd==userall.get(username):
print('登陆成功')
else:
print('帐号/密码错误')
python作业(二)实现注册功能和登陆功能的更多相关文章
- 作业二:注册软件github
注册Github
- python作业/练习/实战:2、注册、登录(文件读写操作)
作业要求 1.实现注册功能输入:username.passowrd,cpassowrd最多可以输错3次3个都不能为空用户名长度最少6位, 最长20位,用户名不能重复密码长度最少8位,最长15位两次输入 ...
- python实现软件的注册功能(机器码+注册码机制)
http://www.cnblogs.com/cquptzzq/p/5940583.html 一.前言: 目的:完成已有python图像处理工具的注册功能 功能:用户运行程序后,通过文件自动检测认证状 ...
- ASP.net(C#)利用SQL Server实现注册和登陆功能
说说我现在吧,楼主现在从事的事IT行业,主攻DotNet技术:当然这次上博客园我也是有备而来,所有再次奉献鄙人拙作,以飨诸位,望诸位不吝赐教. 世界上大多数的工作都是熟练性的工种,编程也不例外,做久了 ...
- Python学习之编写三级菜单(Day1,作业二)
作业二:多级菜单 三级菜单 可依次进入各子菜单 在各级菜单中输入B返回上一级Q退出程序 知识点:字典的操作,while循环,for循环,if判断 思路: 1.开始,打印一级菜单让用户进行选择(可以输入 ...
- Python作业模拟登陆(第一周)
模拟登陆:1. 用户输入帐号密码进行登陆2. 用户信息保存在文件内3. 用户密码输入错误三次后锁定用户 思路: 1. 用户名密码文件为passwd,锁定用户文件为lock 2. 用户输入账号密码采用i ...
- Python Django 实现简单注册功能
Python Django 实现简单注册功能 项目创建略,可参考前期文档介绍. 目录结构如下 编辑views.py from django.shortcuts import render # Crea ...
- Python 爬虫二 requests模块
requests模块 Requests模块 get方法请求 整体演示一下: import requests response = requests.get("https://www.baid ...
- python作业ATM(第五周)
作业需求: 额度 15000或自定义. 实现购物商城,买东西加入 购物车,调用信用卡接口结账. 可以提现,手续费5%. 支持多账户登录. 支持账户间转账. 记录每月日常消费流水. 提供还款接口. AT ...
随机推荐
- 机器学习基础环境的安装与使用(MAC版)
使用到Matplotlib.Numpy.Pandans等库 1.创建虚拟环境 >>>> sudo pip3 install virtualenv >>>> ...
- JAVA对mongodb的基本操作
public class test3 { //连接数据库(不需要验证,用于测试连接本地的mongodb) public static MongoDatabase getDatabase(String ...
- CSS第二篇
给导航设置圆角的代码: c3 里面的属性:border-radius:7px: 1补充盒子问题 (盒子边框紧邻变粗问题)将两个盒子边框重叠并且设置定位提高层级避免盒子重叠,鼠标放上去只显示一个盒子的边 ...
- compareTo的用法
在java编程中,我们会偶尔遇到字符串大小比较的问题,compareTo()方法很简单就实现这种功能.该方法用于判断一个字符串是否大于.等于还是小于另一个字符串.判断字符串大小的依据是根据它们在字典表 ...
- tensorflow 学习纪录(持续更新)
import tensorflow as tf import numpy as np #tensor = tf.constant([[1,2,3,4,5,6,7,8],[1,2,3,4,5,6,7,8 ...
- C语言中的一维数组
一.一维数组的定义和引用 (1)一维数组的定义 类型说明符表示数组中的元素类型 数组标识符该数组型变量的名称,命名规则与变量名一致 常量表达式定义了数组中存放的数据元素的个数. (2)一维数组的引用 ...
- JS处理日期&字符串格式相互转换
之前找过一些获取系统日期以及日期&字符串格式相互转换的方式,但总体自我感觉来说还是以下的方式会更适合一些. 如有更好的方式,望大家多多赐教和交流,谢谢! 2016年曾写过一次,不过只是发了一下 ...
- SSH配置
什么是SSH: SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定:SSH 为建立在应用层和传输层基础上的安全协议.SSH ...
- 编译原理作业(第一次)-完成retinf.c(阉割版)
首先,作业要求概括如下: 根据前缀表达式文法,实现statements() 和expression() 两个函数. 并且要求使得语义分析在完成分析前缀表达式并输出中间代码的同时,也能够将前缀表达式翻译 ...
- 编程总结5&学习总结
基础题目 请在第一周作业的基础上,继续完成:找出给定的文件中数组的最大值及其对应的最小下标(下标从0开始).并将最大值和对应的最小下标数值写入文件. 输入:请建立以自己英文名字命名的txt文件,并输入 ...