python文件操作--复制文件

本文介绍两种使用Python进行文件复制的方法,一种是通过手动打开和读取文件,另一种是利用with语句简化资源管理。通过具体代码示例,展示了如何从源文件读取数据并将其写入目标文件,实现文件内容的完整复制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

##练习: 复制文件

def read_file():
    try:
        f = open('d:\ip1.log','r')
        f_copy = open('d:\ip2.log','a')
        try:
            while True:
                s = f.readline()
                if not s:
                    break
                f_copy.write(str(s))
        finally:
            f_copy.close()
            f.close()
            print("文件已关闭")
    except IOError:
        print("文件打开失败")

read_file()
print("programing end!")
##练习: 复制文件--与上面等效
# with语句
# 语法: with 表达式1 [as variables 1], 表达式2 [as 变量名2], ...
# 作用: 对于资源访问的场合,确保使用过程中,不管是否发生异常,都会执行必要的清理操作,并释放资源;
# 如,    文件的打开关闭、线程中所的自动获取和释放,键盘鼠标等共享设备
# with 语句和try-finally 相似,无论异常与否都会释放资源, as子句用于绑定表达式创建的对象



def copy_file(file_source, file_target):
    try:
        with open(file_source,'rb') as f, open(file_target,'ab') as f_copy:
            while True:
                s = f.read(4096)
                if not s:
                    break
                f_copy.write(s)
            print("文件复制成功")
    except:
        print("文件复制失败")


def main():
    file_source = input('请输入源文件:')
    file_target = input('请输入目标文件:')
    copy_file(file_source,file_target)
    print("programing end!")

main()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值