python文件和文件夹复制函数


Posted in Python onFebruary 07, 2020

本文实例为大家分享了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 os
def 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 os
def 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('文件夹','复制后文件夹')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Nginx搭建HTTPS服务器和强制使用HTTPS访问的方法
Aug 16 Python
Python爬虫利用cookie实现模拟登陆实例详解
Jan 12 Python
利用python程序生成word和PDF文档的方法
Feb 14 Python
Python 装饰器使用详解
Jul 29 Python
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
Feb 24 Python
python实现朴素贝叶斯分类器
Mar 28 Python
pandas的唯一值、值计数以及成员资格的示例
Jul 25 Python
python分块读取大数据,避免内存不足的方法
Dec 10 Python
Python实现读取并写入Excel文件过程解析
May 27 Python
python和JavaScript哪个容易上手
Jun 23 Python
如何用PyPy让你的Python代码运行得更快
Dec 02 Python
Python+Selenium实现抖音、快手、B站、小红书、微视、百度好看视频、西瓜视频、微信视频号、搜狐视频、一点号、大风号、趣头条等短视频自动发布
Apr 13 Python
tf.concat中axis的含义与使用详解
Feb 07 #Python
浅谈tensorflow 中tf.concat()的使用
Feb 07 #Python
Python for循环通过序列索引迭代过程解析
Feb 07 #Python
python中with用法讲解
Feb 07 #Python
如何基于Python实现数字类型转换
Feb 07 #Python
Python while循环使用else语句代码实例
Feb 07 #Python
Python matplotlib画曲线例题解析
Feb 07 #Python
You might like
深入解析phpCB批量转换的代码示例
2013/06/27 PHP
PHP中Enum(枚举)用法实例详解
2015/12/07 PHP
PHP让网站移动访问更加友好方法
2019/02/14 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
2020/03/24 PHP
js 操作select相关方法函数
2009/12/06 Javascript
js URL参数的拼接方法比较
2012/02/15 Javascript
基于jquery & json的省市区联动代码
2012/06/26 Javascript
提示$ is not defined错误分析及解决
2013/04/09 Javascript
js获取指定日期前后的日期代码
2013/08/20 Javascript
JavaScript实现的多个图片广告交替显示效果代码
2015/09/04 Javascript
深入理解JavaScript 函数
2016/06/06 Javascript
使用jquery获取url及url参数的简单实例
2016/06/14 Javascript
jQuery滚动新闻实现代码
2016/06/26 Javascript
XMLHttpRequest Level 2 使用指南
2016/08/26 Javascript
jQuery 全选 全不选 事件绑定的实现代码
2017/01/23 Javascript
解决vue router使用 history 模式刷新后404问题
2017/07/19 Javascript
Express本地测试HTTPS的示例代码
2018/06/06 Javascript
VUE 配置vue-devtools调试工具及安装方法
2018/09/30 Javascript
微信小程序如何再次获取用户授权的方法
2019/05/10 Javascript
JS实现求字符串中出现最多次数的字符和次数示例
2019/07/05 Javascript
vue中是怎样监听数组变化的
2020/10/24 Javascript
[56:13]DOTA2-DPC中国联赛定级赛 LBZS vs Phoenix BO3第一场 1月10日
2021/03/11 DOTA
[08:06]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant 选手采访
2021/03/11 DOTA
python使用urllib模块开发的多线程豆瓣小站mp3下载器
2014/01/16 Python
Python中的自省(反射)详解
2015/06/02 Python
python snownlp情感分析简易demo(分享)
2017/06/04 Python
Pandas 按索引合并数据集的方法
2018/11/15 Python
python数据类型可变不可变知识点总结
2020/03/06 Python
CSS3中的Transition过度与Animation动画属性使用要点
2016/05/20 HTML / CSS
农业局学习党的群众路线教育实践活动心得体会
2014/03/07 职场文书
销售经理竞聘书
2014/03/31 职场文书
旅游活动总结
2014/08/27 职场文书
2014大学辅导员工作总结
2014/12/02 职场文书
2015年民主生活会发言材料
2014/12/15 职场文书
2016暑期校本培训心得体会
2016/01/08 职场文书
CSS3中Animation实现简单的手指点击动画的示例
2021/07/15 HTML / CSS