13----我是作业
1、编写文件修改功能,调用函数时,传入三个参数(修改的文件路径,要修改的内容,修改后的内容)既可完成文件的修改
# 方式一:文本文件编辑器的修改模式 def file_modify(path,old,new): with open(path,'r',encoding='utf-8') as f: data = f.read() # 将一杯改为三杯 with open(path,'w',encoding='utf-8') as f: f.write(data.replace(old,new)) file_modify(r'E:\pycharm\代码\pycharm-oldboy\WEEK4\day02\04-作业\01-作业\info-register','一杯','两杯') # 方式二: def file_modify(path,old,new): with open(path,'r',encoding='utf-8') as f,\ open('info-register-cover','w',encoding='utf-8') as f1: for line in f: f1.write(line.replace(old,new)) import os os.remove('info') os.rename('info-register-cover',path) file_modify(r'E:\pycharm\代码\pycharm-oldboy\WEEK4\day02\04-作业\01-作业\info','两','一')
2/编写tail工具
def tail_tool(start): import time with open('access.log','rb') as f: # 将指针移到文件末尾 f.seek(0,2) while True: for line in f: if line == 0: break time.sleep(15) else: print(line.decode('utf-8'),end='') tail_tool()
3/编写登录功能
def login(name,password): flag = True while flag: # name = input('your name:') with open('info','r',encoding='utf-8') as f,\ open('info_new','w',encoding='utf-8') as f1: for line in f: username,pwd,count = line.strip().split(':') count = int(count) if name == username: if count == 5: print(f'{name}被锁定') return 'locked' else: while count < 5: # password = input('your password:') if password == pwd: print('登陆成功') flag = False break else: print('密码错误') count += 1 f1.write(f'{username}:{pwd}:{count}\n') import os os.remove('info') os.rename('info_new','info') login('egon','1234')