python编写代码实现文件的拷贝功能_python利用os模块编写文件复制功能——copy()函数用法...
我就废话不多说了,大家还是直接看代码吧~
#文件复制
import os
src_path=r'E:\Pycharm\python100题\代码'
target_path=r'E:\Pycharm\python100题\123'
#封装成函数
def copy_function(src,target):
if os.path.isdir(src) and os.path.isdir(target):
filelist=os.listdir(src)
for file in filelist:
path=os.path.join(src,file)
if os.path.isdir(path):
copy_function(path,target)
with open(path,'rb') as rstream:
container=rstream.read()
path1=os.path.join(target,file)
with open(path1,'wb') as wstream:
wstream.write(container)
else:
print('复制完毕!')
copy_function(src_path,target_path)
#改进后的文件复制,可以递归复制文件,之前的文件复制不能复制文件夹
import os
src_path=r'E:\Pycharm\python100题\代码'
target_path=r'E:\Pycharm\python100题\123'
def copy_function(src,target):
if os.path.isdir(src) and os.path.isdir(target):
filelist=os.listdir(src)
for file in filelist:
path=os.path.join(src,file)
if os.path.isdir(path): #判断是否为文件夹
target1=os.path.join(target,file)
os.mkdir(target1) #在目标文件下在创建一个文件夹
copy_function(path,target1)
else:
with open(path, 'rb') as rstream:
container = rstream.read()
path1 = os.path.join(target, file)
with open(path1, 'wb') as wstream:
wstream.write(container)
else:
print('复制完毕!')
copy_function(src_path, target_path)
补充知识:python复制文件夹(包含os库多种函数的)
看代码吧~
import os#调出os库
#文件的复制
def mycopy(file1,file2):#定义一个mycopy函数用于复制文件
f1=open(file1,"rb")#以读取模式打开file1
f2=open(file2,"wb")#以清空写模式打开file2
content = f1.readline()#将第一行数据赋给content
while len(content)>0:#如果读取到的数据长度不为0则循环执行
f2.write(content)#在file2里写下content
content=f1.readline()#再读一行赋给content
f1.close()#关闭file1
f2.close()
#自定义目录复制函数
def copydd(dir1,dir2):#定义复制文件夹函数coppydd
#获取被复制目录中的所有文件信息
dlist = os.listdir(dir1)#以列表模式赋给dlist
#创建新目录
os.mkdir(dir2)#创建新文件夹dir2
#遍历所有文件并执行文件复制
for f in dlist:#让f在dlist中遍历
#为遍历的文件添加目录路径
file1 = os.path.join(dir1,f)#将f遍历出的文件名给file1(dir1+f即路径+文件名)
file2 = os.path.join(dir2,f)#同样也给file2
#判断是否是文件
if os.path.isfile(file1):#判断是否为文件的方式为os库中的函数 os.path.isfile(文件名)
mycopy(file1,file2)#调用自定义的mycopy函数复制文件
if os.path.isdir(file1):#如果是文件夹的话 那就调用自身(自身就是复制文件夹嘛)e而处理的不是dir1,dir2,是file1,file2,因为此时文件夹同文件一起被f遍历,此处判断的就是f遍历出的是文件还是文件夹
coppydd(file1,file2)#调用自身 递归思想
#测试
copydd("./aa","./bb")#当前文件夹中的aa文件夹复制到bb文件夹 没有会自动创建
以上这篇python利用os模块编写文件复制功能——copy()函数用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
时间: 2020-07-10
python编写代码实现文件的拷贝功能_python利用os模块编写文件复制功能——copy()函数用法...相关推荐
- Python语言编程学习:文件路径变量修改,利用os模块固定文件父路径,变换文件子路径实现代码
Python语言编程学习:文件路径变量修改,利用os模块固定文件父路径,变换文件子路径实现代码 目录 文件路径变量修改,利用os模块固定文件父路径,变换文件子路径实现代码
- python excel文件转换成字符串_python利用pandas将excel文件转换为txt文件的方法
python将数据换为txt的方法有很多,可以用xlrd库实现.本人比较懒,不想按太多用的少的插件,利用已有库pandas将excel文件转换为txt文件. 直接上代码: ''' function:将 ...
- 利用os模块生成 文件夹和文件
需求: 使用os模块创建如下目录结构 glance/├── __init__.py├── api│ ├── __init__.py│ ├── policy.py│ └── versions.py├── ...
- python编写代码实现文件的拷贝功能_python从一个文件夹自动拷贝文件到目标文件夹的代码...
这里为大家提供一个python操作文件的例子,实现功能:从一个文件夹自动拷贝文件到目标文件夹. 供python爱好者学习参考. 代码如下: # Filename: CopyPictures.py im ...
- python实现文件上传功能_python实现上传下载文件功能
最近刚学python,遇到上传下载文件功能需求,记录下! django web项目,前端上传控件用的是uploadify. 文件上传 - 后台view 的 Python代码如下: @csrf_exem ...
- 看过来,如何用Python 一行代码能实现丧心病狂的功能
这篇文章主要介绍了Python 一行代码能实现丧心病狂的功能,需要的朋友可以参考下 手头有 109 张头部 CT 的断层扫描图片,我打算用这些图片尝试头部的三维重建.基础工作之一,就是要把这些图片数据 ...
- 一.编写代码完成复制粘贴的功能
一.编写代码完成复制粘贴的功能 import java.io.*;public class Demo05 {public static void main(String[] args) throws ...
- python安装os模块_python的os模块(ipython,文件,目录,权限,管理)
什么是os模块 os模块提供了多数操作系统的功能接口函数.当os模块被导入后,它会自适应于不同的操作系统平台,根据不同的平台进行相应的操作,在python编程时,经常和文件.目录打交道,这时就离不了o ...
- Python OS模块和文件处理
Python OS模块和文件处理 文件处理 1. 打开和关闭文件 2. 读&写 3. 文件定位 OS模块 1. OS模块简介: 2. OS模块常用函数 3. OS模块常用方法实战 4. 例题练 ...
最新文章
- 抬头看路,埋头干活(一)
- 网络优化404页面没用吗?对于SEO会造成什么影响?
- LeetCode 495. Teemo Attacking
- 2010英语WCDMA,希望你也和一样!
- 关于正则表达式,我所知道的都在这里
- Xcode6中如何对scrollview进行自动布局(autolayout)
- Linux centos7 安装 MySQL5.7.x
- 小白初涉,先试试水。涉及Python,C语言基础,机器学习等
- Copy Clone
- 华为nova 5i Pro发布:麒麟810+4800万像素AI四摄
- javaScript常见的五种数组去重(转载)
- 【光学】基于matlab圆孔菲涅尔衍射【含Matlab源码 522期】
- IEEE 1588-PTP简介
- 2014年全国最新企业名录免费采集下载
- python经纬度转换xy坐标公式 pyqt_EXCEL公式进行经纬度与XY坐标的相互转换
- TCP协议:RST标志位
- RGB与YCbCr颜色空间的转换
- 以太坊君士坦丁堡:是利好?-千氪
- 如何配置Windows平台轻量级vscode c++开发环境
- JAVA面试这一篇就够了
热门文章
- 玩转 SpringBoot 2.x 之使用 SpringDataJpa 篇
- mysql 9 5.5.29_在CentOS 6.3中安装与配置Mysql-5.5.29的方法
- java怎么使两个界面联系_怎么样用java编写界面实现两个数的加法运算
- html 事件重叠,两个div叠加触发事件发生闪烁问题的解决方法
- Cacti监控mysql数据库server实现过程
- C#异常Retry通用类
- java线程的小问题与回答
- [BZOJ] 1614: [Usaco2007 Jan]Telephone Lines架设电话线
- 转:SQL:外连接on条件与where条件的区别
- ASP.NET 4.0尚未在Web服务器上注册。您需要手动将Web服务器配置为使用ASP.NET,这样您的网站才能正确运行。...