一、今日作业

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 本日作业+周末作业的更多相关文章

  1. day16 本日作业+周末作业

    目录 1.编写计数器功能,要求调用一次在原有的基础上加1 2.周末作业 1.编写计数器功能,要求调用一次在原有的基础上加1 def func(): x=0 def counter(): nonloca ...

  2. day03 作业 and 周末作业

    请输出 name 变量对应的值中 "e" 所在索引位置? # name = "leX leNb"# num = 0# while num < len(na ...

  3. [福大软工] Z班 团队作业——系统设计 作业成绩

    团队作业--系统设计 作业链接 http://www.cnblogs.com/easteast/p/7709763.html 作业情况 这次作业大家完成度都很高,大家的团队分工,任务布置都安排得很到位 ...

  4. 如何使用git 提交作业 收作业

    如何使用git 提交作业 收作业 方法论: 今天就来用一个通俗易懂的自然模型来解释Git的commit,pull和push.不过,我们首先要理解两个名词,remote,local. remote,翻译 ...

  5. day3(第一周)周末作业

    1.创建字符串变量的三种写法及其区别# 代码:单引号 ''# 双引号 ""# 多引号 ''' '''# 区别:单引号和双引号没有任何区别,一般用于单行字符:多行字符用多引号.## ...

  6. 10月20日MySQL数据库作业解析

    设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2的表 ...

  7. Linux 第30天: (08月5日) 练习和作业

    变量脚本 1.编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小 server_ip=`if ...

  8. xv6的作业翻译——作业1 - shell和系统调用

    Xv6的lecture LEC 1 Operating systems   L1: O/S overview L1:O/S概述   * 6.828 goals 6.828的目标   Understan ...

  9. C语言第四次作业-嵌套作业

    一.PTA实验作业 题目1:7-4 换硬币 1. 本题PTA提交列表 2.设计思路 第一:定义三个整型变量f,t,o,分别代表五分,两分,一分的数量 第二:输入待换金额x 第三:令f=x/5;t=x/ ...

随机推荐

  1. HttpUtil工具类,发送Get/Post请求,支持Http和Https协议

    HttpUtil工具类,发送Get/Post请求,支持Http和Https协议 使用用Httpclient封装的HttpUtil工具类,发送Get/Post请求 1. maven引入httpclien ...

  2. 使用 UniApp 实现小程序的微信登录

    微信登录思路: 在main.js 中封装公共函数,用于判断用户是否登录 在main.js 中分定义全局变量,用于存储接口地址 如果没有登录.则跳转至登录页面 进入登录页面 通过 wx.login 获取 ...

  3. mysql域名解析引起的远程访问过慢?

    MYSQL远程连接速度慢的解决方法 PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是, 默认安装的MYSQL开启了DNS的反 ...

  4. 【分区】使用 GPT 分区表分区并格式化 (非 FreeBSD 系统)

    新购买的 Linux 云服务器,由于数据盘未做分区和格式化,无法使用. 注意: 数据盘中的数据在格式化后将全部被清空.请在格式化之前,确保数据盘中没有数据或已对重要数据进行备份.为避免服务发生异常,格 ...

  5. jQuery中ajax 跳入error的原因总结

    一个标准的jquery的ajax代码: $.ajax({ type: 'POST', url: 'getSecondClassification', data: {"sort2": ...

  6. Spring boot添加配置类@Configuration并初始化@Bean,@Resource和@Autowired都为null

    大写加黑,找了好久@Resource和@Autowired都依赖不到创建的bean的原因:@Bean的方法名即是创建的Bean名称 import org.activiti.engine.Process ...

  7. 【转载】自动化魔方求解器的Bug——选择合适的色彩空间

    目录 1. 准备工作-- 2. RGB颜色空间 3. LAB色彩空间 4. YCrCb色彩空间 5. HSV色彩空间 Color spaces in OpenCV (C++ / Python) 几天前 ...

  8. Stylus 之 网教通直播间整修

    暗色模式 效果 Mozilla 格式源代码 @-moz-document domain("fj.101.com") { * { transition: all .3s; } #wj ...

  9. PuTTY通过SSH连接上Ubuntu20.04

    在PuTTY中连接到Ubuntu20.04大致需要几个步骤(不一定对应文本中的序号):1) 安装opensh-server (Ubuntu安装好之后 ,一般openssh-client自动已经安装好) ...

  10. spark源码解析总结

    ========== Spark 通信架构 ========== 1.spark 一开始使用 akka 作为网络通信框架,spark 2.X 版本以后完全抛弃 akka,而使用 netty 作为新的网 ...