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 相关文章推荐
python+unittest+requests实现接口自动化的方法
Nov 29 Python
Python中使用遍历在列表中添加字典遇到的坑
Feb 27 Python
谈谈Python中的while循环语句
Mar 10 Python
python如何统计代码运行的时长
Jul 24 Python
通过Python编写一个简单登录功能过程解析
Sep 04 Python
Python 获取命令行参数内容及参数个数的实例
Dec 20 Python
python读取ini配置的类封装代码实例
Jan 08 Python
python自定义函数def的应用详解
Jun 03 Python
一文详述 Python 中的 property 语法
Sep 01 Python
Python趣味爬虫之用Python实现智慧校园一键评教
May 28 Python
python中使用 unittest.TestCase单元测试的用例详解
Aug 30 Python
Python 视频画质增强
Apr 28 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
PHP字符串的编码问题的详细介绍
2013/04/27 PHP
php颜色转换函数hex-rgb(将十六进制格式转成十进制格式)
2013/09/23 PHP
YII CLinkPager分页类扩展增加显示共多少页
2016/01/29 PHP
php微信公众号开发(3)php实现简单微信文本通讯
2016/12/15 PHP
PHP 实现手机端APP支付宝支付功能
2018/06/07 PHP
javascript 控制 html元素 显示/隐藏实现代码
2009/09/01 Javascript
jquery+json实现的搜索加分页效果
2010/03/31 Javascript
一些经常会用到的Javascript检测函数
2010/05/31 Javascript
复选框全选与全不选操作实现思路
2013/08/18 Javascript
jquery索引在使用中的一些困惑
2013/10/24 Javascript
jQuery处理xml格式的返回数据(实例解析)
2013/11/28 Javascript
JavaScript Serializer序列化时间处理示例
2014/07/31 Javascript
javascript实现控制的多级下拉菜单
2015/07/05 Javascript
js学习笔记之事件处理模型
2016/10/31 Javascript
分享十三个最佳JavaScript数据网格库
2017/04/07 Javascript
解决Vue页面固定滚动位置的处理办法
2017/07/13 Javascript
jquery animate动画持续运动的实例
2017/11/29 jQuery
在 Angular-cli 中使用 simple-mock 实现前端开发 API Mock 接口数据模拟功能的方法
2018/11/28 Javascript
JavaScript定时器设置、使用与倒计时案例详解
2019/07/08 Javascript
vue动态渲染svg、添加点击事件的实现
2020/03/13 Javascript
vue-cli中实现响应式布局的方法
2021/03/02 Vue.js
python实现telnet客户端的方法
2015/04/15 Python
详解Numpy中的广播原则/机制
2018/09/20 Python
python datetime时间格式的相互转换问题
2020/06/11 Python
用HTML5 实现橡皮擦的涂抹效果的教程
2015/05/11 HTML / CSS
保加利亚服装和鞋类购物网站:Bibloo.bg
2020/11/08 全球购物
计算机个人求职信范例
2014/01/24 职场文书
个人借款担保书
2014/04/02 职场文书
商铺门前三包责任书
2014/07/25 职场文书
工会经费申请报告
2015/05/15 职场文书
2015秋季开学典礼致辞
2015/07/16 职场文书
幼儿园教师管理制度
2015/08/05 职场文书
六年级上册《闻官军收河南河北》的教学设计
2019/11/15 职场文书
pandas 操作 Excel操作总结
2021/03/31 Python
比较node.js和Deno
2021/04/27 Javascript
Python3 多线程(连接池)操作MySQL插入数据
2021/06/09 Python