day11 本日作业+周末作业
一、今日作业
1、编写文件copy工具
with open("a.txt",mode="r",encoding="utf-8") as f1 ,open("b.txt",mode="w",encoding="utf-8") as f2:
f2.write(f1.read())
2、编写登录程序,账号密码来自于文件
user_inp = input("请输入用户名:")
pwd_inp = input("请输入密码:")
with open("a.txt",mode="r",encoding="utf-8") as f :
for line in f:
username,password = line.strip().split(":")
if username == user_inp and password == pwd_inp:
print("登录成功")
break
else:
print("账号或秘密错误")
3、编写注册程序,账号密码来存入文件
username = input("请输入账号:").strip()
password = input("请输入密码:")
with open("b.txt","a",encoding="utf-8") as f :
f.write("\n{}:{}".format(username,password))
二、周末综合作业:
1、编写用户登录接口
1、输入账号密码完成验证,验证通过后输出"登录成功"
2、可以登录不同的用户
3、同一账号输错三次锁定,(提示:锁定的用户存入文件中,这样才能保证程序关闭后,该用户仍然被锁定)
import os
count = 0
tag = True
list1 = []
while tag:
username = input("请输入用户名:")
if os.path.exists("locked\{}".format(username)):
print("用户被锁定")
count=0
break
password = input("请输入密码:")
with open("a.txt",mode="r",encoding="utf-8") as f :
for line in f :
user,pwd = line.strip().split(":")
if username == user and password == pwd:
print("登录成功")
tag = False
break
else:
if list1.count(username) ==2:
with open("locked\{}".format(username),"w") as f :
print("错误3次该用户被锁定")
else:
list1.append(username)
print(list1.count(username))
print("登录失败")
2、编写程序实现用户注册后,可以登录
import os
list2=[]
list1=["1","2","3"]
while True:
print('''
1.注册
2.登录
3.退出
''')
cmd = input("cmd>")
tag=True
if cmd == list1[0]:
username = input("请输入你要注册的账号:")
password = input("请输入你要注册的密码:")
with open("a.txt","a",encoding="utf-8") as f :
f.write(f"{username}:{password}\n")
elif cmd == list1[1]:
while tag:
use_inp = input("请输入你的用户名:")
if os.path.exists(f"locked/{use_inp}"):
print("账号被锁定")
tag = False
break
else:
pwd_inp = input("请输入你的密码:")
with open("a.txt","r",encoding="utf-8") as f :
for line in f :
username,password=line.strip().split(":")
if use_inp==username and password==pwd_inp:
print("登录成功")
tag = False
break
else:
if list2.count(use_inp) == 2:
with open(f"locked/{use_inp}","w",encoding="utf-8") :
pass
print("账号被锁定")
break
else:
print("输入错误")
list2.append(use_inp)
print(list2.count(use_inp))
elif cmd == list1[2]:
break
else:
print("非法输入")
day11 本日作业+周末作业的更多相关文章
- day16 本日作业+周末作业
目录 1.编写计数器功能,要求调用一次在原有的基础上加1 2.周末作业 1.编写计数器功能,要求调用一次在原有的基础上加1 def func(): x=0 def counter(): nonloca ...
- day03 作业 and 周末作业
请输出 name 变量对应的值中 "e" 所在索引位置? # name = "leX leNb"# num = 0# while num < len(na ...
- [福大软工] Z班 团队作业——系统设计 作业成绩
团队作业--系统设计 作业链接 http://www.cnblogs.com/easteast/p/7709763.html 作业情况 这次作业大家完成度都很高,大家的团队分工,任务布置都安排得很到位 ...
- 如何使用git 提交作业 收作业
如何使用git 提交作业 收作业 方法论: 今天就来用一个通俗易懂的自然模型来解释Git的commit,pull和push.不过,我们首先要理解两个名词,remote,local. remote,翻译 ...
- day3(第一周)周末作业
1.创建字符串变量的三种写法及其区别# 代码:单引号 ''# 双引号 ""# 多引号 ''' '''# 区别:单引号和双引号没有任何区别,一般用于单行字符:多行字符用多引号.## ...
- 10月20日MySQL数据库作业解析
设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表 ...
- Linux 第30天: (08月5日) 练习和作业
变量脚本 1.编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小 server_ip=`if ...
- xv6的作业翻译——作业1 - shell和系统调用
Xv6的lecture LEC 1 Operating systems L1: O/S overview L1:O/S概述 * 6.828 goals 6.828的目标 Understan ...
- C语言第四次作业-嵌套作业
一.PTA实验作业 题目1:7-4 换硬币 1. 本题PTA提交列表 2.设计思路 第一:定义三个整型变量f,t,o,分别代表五分,两分,一分的数量 第二:输入待换金额x 第三:令f=x/5;t=x/ ...
随机推荐
- 移动UI系列 - 简单地使用半衰期算法来预测手势的滑动方向与速度
前言 有一个问题, 给定一个物体的运动轨迹, 包含时间和坐标的数组, 如何使用这个数据来预测物体未来的运动走势?? 本文提供了一个很简单的方式去实现这个算法. 效果够用, 又简单, 有一定的准确程度. ...
- 【asp.net core 系列】8 实战之 利用 EF Core 完成数据操作层的实现
0. 前言 通过前两篇,我们创建了一个项目,并规定了一个基本的数据层访问接口.这一篇,我们将以EF Core为例演示一下数据层访问接口如何实现,以及实现中需要注意的地方. 1. 添加EF Core 先 ...
- .Net Core实战之基于角色的访问控制的设计
前言 上个月,我写了两篇微服务的文章:<.Net微服务实战之技术架构分层篇>与<.Net微服务实战之技术选型篇>,微服务系列原有三篇,当我憋第三篇的内容时候一直没有灵感,因此先 ...
- WDCP3.3中多PHP版本安装方法,以及安装遇到的问题
[多版本php安装] 安装方法如下: wget http://down.wdlinux.cn/in/phps.sh sh phps.sh (共支持8个版本的PHP,如5.2.17/5.3.29/5.4 ...
- Spring新注解
@Configuration作用:指定当前类为一个配置类@ComponentScan作用:用于通过注释指定Spring在创建容器时要扫描的包 当配置类作为AnnotationCon ...
- 附024.Kubernetes_v1.18.3高可用部署架构二
kubeadm介绍 kubeadm概述 参考<附003.Kubeadm部署Kubernetes>. kubeadm功能 参考<附003.Kubeadm部署Kubernetes> ...
- RFID-RC522 模块的读写操作【Arduino】
接线 Arduino Uno <-> RFID-RC52210 <-> SDA13 <-> SCK11 <-> MOSI12 <-> MIS ...
- 使用三台云服务器搭建真正的Redis集群
三台云服务器搭建redis集群# 今天花了一天的时间弄集群redis:遇到了很多坑,从头开始吧 环境讲解: 两台配置:1核2G,另一台:1核1G: 操作系统:Centos 7.6 Redis:3.2. ...
- cocos2dx 启用cjson
在appDelegate.cpp文件中添加 #if __cplusplus extern "C" { // 加入此代码的目的,防止污染引擎的scripting目录 #include ...
- JVM生命周期与运行过程
1. Java虚拟机的生命周期 Java虚拟机的生命周期 一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序.程序开始执行时他才运行,程序结束时他就停止.你在同一台机器上运行三个程序,就会 ...