python入门笔记——文件案例(对简易文件的备份,含原代码和优化代码)

python入门笔记——文件案例(对简易文件的备份,含原代码和优化代码)

# 案例:文件的备份
def copy_file():
    # 接收用户输入的文件名
    old_filename = input('请输入需要备份的文件名:')
    file_list = old_filename.split('.')
    # 构造新的文件名,在其最后加上备份的后缀
    new_filename = file_list[0] + '备份.' + file_list[1]
    # 打开需要备份的文件以及以写的方式打开新文件,若没有则创建
    old_file = open(old_filename,'r',encoding='utf-8')
    new_file = open(new_filename,'w',encoding='utf-8')
    content = old_file.read()# 将原文件中的内容读取出来
    new_file.write(content)# 将内容写入备份文件中
    old_file.close()
    new_file.close()
    pass

# copy_file()

# 对于较大的文件,我们用之前的方法是无法完成备份的,所以我们对于之前的代码做出改善
def copy_file_plus():
    old_filename = input('请输入需要备份的文件名:')
    filenameList = old_filename.split('.')
    new_filename = filenameList[0] + '备份.' + filenameList[1]
    try:
        with open(old_filename,'r',encoding='utf-8') as old_file,open(new_filename,'a',encoding='utf-8') as new_file:
            while True:
                content = old_file.read(1024)# 改成多次读取,每次读取1024个数据
                new_file.write(content)
                if len(content) < 1024:
                    break
                    pass
                pass
            pass
        pass
    except Exception as message:
        print(message)
        pass
    pass

copy_file_plus()

在这里插入图片描述
在这里插入图片描述

输出结果:
在这里插入图片描述
两份代码在小文件的处理上结果相同

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值