首页 > 编程 > Python > 正文

python文件和文件夹复制函数

2020-02-15 21:19:41
字体:
来源:转载
供稿:网友

本文实例为大家分享了python文件和文件夹复制函数,供大家参考,具体内容如下

文件复制函数

代码和注释如下:

# 文件复制函数def copy_file(file1,file2):  '''  将文件一复制到文件二  :param file1:  :param file2:  :return:  '''  # 首先打开源文件file1和目标文件file2  f1 = open(file1,'r')  f2 = open(file2,'w')  # 循环读取写入,实现文件的复制  content = f1.readline()  while len(content)>0:    f2.write(content)    content = f1.readline()  f1.close()  f2.close()# 代码测试,代码调用copy_file('./a.txt','./b.txt')    # 使用相对路径

文件夹复制函数

代码和注释如下:

# 目录(文件夹)复制函数'''首先需要引入 os 模块'''import osdef copy_mulu(dir1,dir2):  '''  复制文件夹  :param dir1:  :param dir2:  :return:  '''  # 获取被复制文件夹中的所有文件信息  dlist = os.listdir(dir1)  # 创建目标文件夹(即为被复制之后的文件夹,文件夹不能自动生成所以要手动创建,文件可以自动生成)  os.mkdir(dir2)  # 遍历出dir1中的所有文件并且复制  for f in dlist:    # 为遍历出的文件添加目录路径(一个完整的文件=目录的路径+文件名)    file1 = os.path.join(dir1,f)   # 源文件    file2 = os.path.join(dir2, f)   # 目标文件    # 判断file1是不是文件    if os.path.isfile(file1):      # 调用上面写好的文件复制函数进行文件复制      copy_file(file1,file2)    # 判断file1是不是文件夹    if os.path.isdir(file1):      # 如果是文件夹则递归调用(自己调用自己,继续循环判断)      copy_mulu(file1,file2)# 代码测试,代码调用copy_mulu('文件夹','复制后文件夹')

合并后的代码如下:

# -*- coding: utf-8 -*-# @File  : 文件和文件夹复制函数.py# @Author : zh# @Date  : 2020/2/5# @Software: PyCharm# 文件复制函数def copy_file(file1,file2):  '''  将文件一复制到文件二  :param file1:  :param file2:  :return:  '''  # 首先打开源文件file1和目标文件file2  f1 = open(file1,'r')  f2 = open(file2,'w')  # 循环读取写入,实现文件的复制  content = f1.readline()  while len(content)>0:    f2.write(content)    content = f1.readline()  f1.close()  f2.close()# 代码测试,代码调用copy_file('./a.txt','./b.txt')    # 使用相对路径# 目录(文件夹)复制函数'''首先需要引入 os 模块'''import osdef copy_mulu(dir1,dir2):  '''  复制文件夹  :param dir1:  :param dir2:  :return:  '''  # 获取被复制文件夹中的所有文件信息  dlist = os.listdir(dir1)  # 创建目标文件夹(即为被复制之后的文件夹,文件夹不能自动生成所以要手动创建,文件可以自动生成)  os.mkdir(dir2)  # 遍历出dir1中的所有文件并且复制  for f in dlist:    # 为遍历出的文件添加目录路径(一个完整的文件=目录的路径+文件名)    file1 = os.path.join(dir1,f)   # 源文件    file2 = os.path.join(dir2, f)   # 目标文件    # 判断file1是不是文件    if os.path.isfile(file1):      # 调用上面写好的文件复制函数进行文件复制      copy_file(file1,file2)    # 判断file1是不是文件夹    if os.path.isdir(file1):      # 如果是文件夹则递归调用(自己调用自己,继续循环判断)      copy_mulu(file1,file2)# 代码测试,代码调用copy_mulu('文件夹','复制后文件夹')            
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表