python shutil
#! /usr/bin/env python
# -*- coding:utf-8 -*-
# shutil 高级的文件、文件夹、压缩包处理模块
import shutil #1.copyfileobj(源文件,目标文件) 将文件内容复制到另一个文件 #shutil.copyfileobj(open('config.log','r'),open('pic.json','a')) #2.copyfile(源文件,目标文件) 复制文件,如果没有目标文件则创建一份,有,清除后复制内容 #shutil.copyfile('zp.xml','write1Xml.xml') #3.copy(源文件,目标文件) 复制文件和状态信息
shutil.copy('zp.xml','w1.xml')
#4.copymode(源文件,目标文件) 仅复制权限。内容、组、用户均不变 (前提是dst文件存在,不然报错)
#5.copytree(源文件夹, 目标文件夹, 忽略的文件类型) 递归的去拷贝文件夹(前提是目标文件夹不存在) #shutil.copytree('D:/Python/mypy/basic','D:/Python/mypy/mm',ignore=shutil.ignore_patterns('*.py'))
# 6.rmtree(path[, ignore_errors[, onerror]]) 递归的去删除文件 #7.move(源文件夹, 目标文件夹) 递归的去移动文件,它类似mv命令,其实就是重命名 #----------------------------------------------------------------------------------------
#操作压缩包
# make_archive(base_name, format,...)
# base_name: 压缩包的文件名,也可以是压缩包的路径。
# 只是文件名时,则保存至当前目录,否则保存至指定路径
# format: 压缩包种类,“zip”, “tar”, “bztar”,“gztar”
# root_dir: 要压缩的文件夹路径(默认当前目录)
# owner: 用户,默认当前用户
# group: 组,默认当前组
# logger: 用于记录日志,通常是logging.Logger对象 #shutil.make_archive('basic','zip',root_dir='D:/Python/mypy') # 两种操作压缩包的方式:zipfile和tarfile
import zipfile ##将某个文件压缩进已经存在的压缩包里
# zi = zipfile.ZipFile('D:/Python/mypy/hh.zip','w')
# zi.write('D:/Python/mypy/Hello World.py')
# zi.write('D:/Python/mypy/basic/blog.xml')
# zi.close() ##解压,会解压到当前文件目录下
# zz = zipfile.ZipFile('D:/Python/mypy/hh.zip','r')
# zz.extractall()
# zz.close() import tarfile
# 压缩
# tar = tarfile.open('D:/Python/mypy/hh.zip','w')
# tar.add('D:/Python/mypy/basic/zp.xml',arcname='zb.xml')#arcname是在压缩包中名称
# tar.close() ##解压
tt = tarfile.open('D:/Python/mypy/hh.zip','r')
tt.extractall('D:/www')#解压到的位置
tt.close()
python shutil的更多相关文章
- python shutil模块简单介绍
python shutil模块简单介绍 简介 shutil模块提供了大量的文件的高级操作.特别针对文件拷贝和删除,主要功能为目录和文件操作以及压缩操作. shutil 模块方法: copy(src, ...
- python shutil相关操作
python shutil模块常用操作 高级的 文件.文件夹.压缩包 处理模块 1.将文件内容拷贝至另一个文件中 shutil.copyfileobj(src, dist, length=16*102 ...
- Python shutil模块
shutil模块下 copy(复制).rm(删除).move(移动) 常用方法举例. copyfileobj(fsrc, fdst[, length])copyfile(src, dst, *, fo ...
- Python shutil.md
shutil shutil模块包括高级文件操作,例如复制和归档. Copying Files shutil.copyfileobj(fsrc, fdst[, length]):将类似文件的对象fsrc ...
- Python shutil模块(目录和文件操作)
import shutil #导入shutil模块 copyfileobj方法 将类文件对象fsrc的内容复制到类文件对象fdst shutil.copyfileobj(fsrc, fdst[, le ...
- python shutil 模块 的剪切文件函数 shutil.movemove(src, dst),换用 os.rename(sourceFile, targetFile)
Google 一搜python 剪切文件,出来shutil 这模块,网上很多人也跟疯说shutil.move(src, dst)就是用来剪切文件的,结果一试,剪切毛线,文件都复制到另一个文件夹了,源文 ...
- python shutil.copy()用法
shutil.copyfile(src, dst):复制文件内容(不包含元数据)从src到dst. DST必须是完整的目标文件名; 如果src和dst是同一文件,就会引发错误shutil.Error. ...
- python—shutil模块
该模块拥有许多文件或文件的删除.移动.复制.重命名等功能. 1.copy():复制文件 格式:shutil.copy(来源文件,目标地址) 返回值:返回复制之后的路径 2.copy2():复制文件和状 ...
- python shutil模块&random模块
shutil模块 import shutil shutil.copyfileobj(open("os_.py", "r"), open("os_2.p ...
随机推荐
- linux应用之samba服务的安装及配置(centos)
一.安装方式: 本文通过yum来重新进行Samba服务器的安装与配置. 二.Samba的简介: Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Me ...
- [Tyvj Aug11] 黄金矿工
传送门 Description 黄金矿工是一个经典的小游戏,它可以锻炼人的反应能力.该游戏中,可以通过“挖矿”获得积分并不断升级.玩家可以在线玩flash版黄金矿工,也可以下载后玩单机版黄金矿工.目前 ...
- php排序方法之选择排序
//选择排序法 $arr = array(3,55,45,2,67,76,6.7,-65,85,4); function selectSort($arr){ for ( $i=0; $i<cou ...
- Notepad++安装xml插件
环境: win7 64位 Notepad++7.3.3 原生的Notepad++不自带xml文件的插件,所以在显示xml文件时并不分行(如下图所示),对于用户编辑,查看的操作而言,并不友好,所以需要安 ...
- [APIO 2017] 商旅
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=5367 [算法] 很明显的分数规划问题 预处理从一个点走到另一个点所获最大利润和最短路 ...
- 从使用os.system)在python命令(重定向标准输入输出
从使用os.system)在python命令(重定向标准输入输出 python 标准输出stdout stdio os.system通常我可以通过改变sys.stdout的值在python更改标准输出 ...
- CodeForces 1109E. Sasha and a Very Easy Test
题目简述:给定$m \leq 10^9+9$,维护以下操作 1. "1 l r x":将序列$a[l], a[l+1], \dots, a[r]$都乘上$x$. 2. " ...
- MyEclipse10.0安装SVN的三种方法
最简单的一种: 首先下载zip包(svn:http://subclipse.tigris.org) 1.直接在MyEclipse10安装目录下的dropins文件夹下新建一个svn文件夹 2.把解压出 ...
- HTTP客户端代码片段
代码片段: public HttpURLConnection connection = null; 设置connection属性 URL url = new URL(urlPath); connect ...
- 解决MySql报错:1130 - Host 'xxx' is not allowed to connect to this MySQL server的方法
发现问题 使用Navicat连接MySql数据库时,未能成功,提示信息如下图: 这个错误提示已经很明确了,"不允许主机'desktop-teat9ob'连接到此mysql服务器", ...