当前位置:
首页 > Python基础教程 >
-
2020Python作业九——函数的基本应用
2020Python作业九——函数的基本应用
@2020.3.17
利用函数,改写功能
# 1、编写文件修改功能,调用函数时,传入三个参数(修改的文件路径,要修改的内容,修改后的内容)即可完成文件的修改
import os def file(file_path, old_content, new_content): with open(r'{}'.format(file_path),mode='rb') as read_f,\ open(r'{}.swap'.format(file_path,mode='wb')) as write_f: #.swap 是Linux系统的命名规则,‘.’开头是隐藏文件 while True: res = read_f.readline().decode('utf-8') if old_content in res: res2 = res.replace('{}'.format(old_content),'{}'.format(new_content)) write_f.write(bytes('{}'.format(res2),encoding='utf-8')) else: write_f.write(bytes('{}'.format(res),encoding='utf-8')) break os.remove('{}'.format(file_path)) # 删除原文件 os.rename('{}.swap'.format(file_path),'{}'.format(file_path)) #将新文件重命名为原文件名 file_path = input('please input file path:') old_content = input('please input content that needs to rewrite:') new_content = input('please input new content:') if file_path and old_content and new_content: mesg = file(file_path, old_content, new_content) print(mesg) else: print('修改失败,请重试')
# 2、编写tail工具
def tail(): cmd = input('请输入命令:').strip() if cmd == 'tail -f access.log': with open(r'access.log', 'a+b') as f: f.write(bytes('{}\n'.format(cmd), encoding='utf-8')) continue else: with open(r'access.log', 'rb') as f: f.write(bytes('{}\n'.format(cmd), encoding='utf-8')) tail()
# 3、编写登录功能
def login(inp_username,inp_password): with open('user.txt',mode='rt',encoding='utf-8') as f: for line in f: # 验证,把用户输入的名字和密码与读出的内容作对比 print(line,end='') # egon:123\n username,password=line.strip().split(':') if inp_username == username and inp_password == password: print('login successfull') break else: print('账号或密码错误') inp_username=input('your name>>: ').strip() inp_password=input('your password>>: ').strip() login(inp_username,inp_password)
# 4、编写注册功能
def register(name,pwd): with open('register.txt',mode='at',encoding='utf-8') as f: f.write('{}:{}\n'.format(name,pwd)) name=input('your name>>: ') pwd=input('your name>>: ') register(name,pwd)
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式