Python实现删除文件但保留指定文件
由于给客户的发布版本上客户改动了些代码和图片,我们这边给他们更新publish都是增量更新(开发提供更新指定的文件,我们提取出来给客户进行覆盖更新),但有时需要更新的文件较多导致不得不一个一个的进行查找、替换,工作量大而且容易出错。所以用python写个保留pulish后目录的指定文件、删除其他文件的功能。
代码如下:
import os
import os.path
def DeleteFiles(path,fileList):
for parent,dirnames,filenames in os.walk(path):
FullPathList = []
DestPathList = []
for x in fileList:
DestPath = path + x
DestPathList.append(DestPath)
for filename in filenames:
FullPath = os.path.join(parent,filename)
FullPathList.append(FullPath)
for xlist in FullPathList:
if xlist not in DestPathList:
os.remove(xlist)
代码解释:
1、for parent,dirnames,filenames in os.walk(path): 该for循环用于遍历指定path的父文件夹、文件夹名(不含目录)、文件名
2、
for x in fileList:
DestPath = path + x
DestPathList.append(DestPath)
该方法两个参数分别是path,filelist。path用来指定publish文件的存放目录,例如:'D:\publish',filelist通过list存放你希望保留的文件及该文件路径,例如:
[r'\1.txt',r'\a\1.txt'],然后将path和filelist拼接起来存放到另一个列表中就是你希望保存文件的完整路径存放在DestPathList中,既['D:\\publish\\1.txt','D:\\publish\\a\\1.txt']
3、
for filename in filenames:
FullPath = os.path.join(parent,filename)
FullPathList.append(FullPath)
将目录下所有文件的绝对路径存放在列表FullPathList中
4、
for xlist in FullPathList:
if xlist not in DestPathList:
os.remove(xlist)
遍历FullPathList中元素跟DestPathList中元素进行比对,如果不相同则删除文件
功能虽然简单,但工作中还是比较实用的,故在此留下脚印。
相关推荐
-
python2.7删除文件夹和删除文件代码实例
复制代码 代码如下: #!c:\python27\python.exe# -*- coding: utf-8 -*- import osimport re from os import pathfrom shutil import rmtree DEL_DIRS = NoneDEL_FILES = r'(.+?\.pyc$|.+?\.pyo$|.+?\.log$)' def del_dir(p): """Delete a directory.""&q
-
Python中删除文件的程序代码
Python是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定.Python 具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用.它具有简单.易学.免费.开源.可移植性.解释性.面向对象.可扩展性.可嵌入性以及丰富的库等特性,目前的应用范围也非常广泛,如系统编程.图像处理.数据库编程等方面. Python开发者可以使用文本编辑器(如Windows的记事本等)或者专业的IDE(集成开发环境)来编写程序代码.IDE使得开发者可
-
python删除特定文件的方法
本文实例讲述了python删除特定文件的方法.分享给大家供大家参考.具体如下: #!/usr/bin/python # -*- coding: utf-8 -*- import os def del_files(path): for root , dirs, files in os.walk(path): for name in files: if name.endswith(".CR2"): os.remove(os.path.join(root, name)) print (&qu
-
python删除过期文件的方法
本文实例讲述了python删除过期文件的方法.分享给大家供大家参考.具体实现方法如下: # remove all jpeg image files of an expired modification date = mtime # you could also use creation date (ctime) or last access date (atime) # os.stat(filename) returns (mode, ino, dev, nlink, uid, gid, siz
-
Python删除空文件和空文件夹的方法
本文实例讲述了Python删除空文件和空文件夹的方法.分享给大家供大家参考.具体实现方法如下: #-*- coding:cp936 -*- """ os.walk() 函数声明:walk(top,topdown=True,onerror=None) 1>参数top表示需要遍历的目录树的路径 2>参数topdown的默认值是"True",表示首先返回目录树下的文件,然后在遍历目录树的子目录.Topdown的值为"False"时
-
python实现删除文件与目录的方法
本文实例讲述了python实现删除文件与目录的方法.分享给大家供大家参考.具体实现方法如下: os.remove(path) 删除文件 path. 如果path是一个目录, 抛出 OSError错误.如果要删除目录,请使用rmdir(). remove() 同 unlink() 的功能是一样的 在Windows系统中,删除一个正在使用的文件,将抛出异常.在Unix中,目录表中的记录被删除,但文件的存储还在. os.removedirs(path) 递归地删除目录.类似于rmdir(), 如果子目
-
Python删除windows垃圾文件的方法
本文实例讲述了Python删除windows垃圾文件的方法.分享给大家供大家参考.具体如下: #coding:utf-8 import os #from glob import glob if os.name == 'nt': if 'HOMEPATH' in os.environ: home = os.environ['HOMEDRIVE'] + os.environ['HOMEPATH'] else: home = os.environ['HOMEPATH'] workpath = os.p
-
python删除文件示例分享
删除文件 复制代码 代码如下: os.remove( filename ) # filename: "要删除的文件名" 产生异常的可能原因: (1)filename 不存在(2)对filename文件, 没有操作权限或只读. 删除文件夹下所有文件和子文件夹 : 复制代码 代码如下: import os def delete_file_folder(src): '''delete files and folders''' if os.path.isfile(s
-
Python实现删除文件但保留指定文件
由于给客户的发布版本上客户改动了些代码和图片,我们这边给他们更新publish都是增量更新(开发提供更新指定的文件,我们提取出来给客户进行覆盖更新),但有时需要更新的文件较多导致不得不一个一个的进行查找.替换,工作量大而且容易出错.所以用python写个保留pulish后目录的指定文件.删除其他文件的功能. 代码如下: 复制代码 代码如下: import os import os.path def DeleteFiles(path,fileList): for parent,d
-
python实现在目录中查找指定文件的方法
本文实例讲述了python实现在目录中查找指定文件的方法.分享给大家供大家参考.具体实现方法如下: 1. 模糊查找 复制代码 代码如下: import os from glob import glob #用到了这个模块 def search_file(pattern, search_path=os.environ['PATH'], pathsep=os.pathsep): for path in search_path.split(os.pathsep): for mat
-
Git 删除远程服务器文件同时保留本地文件实例详解
Git 如何删除远程服务器文件同时保留本地文件 在上传工程到git上时,有时候会把本地的一些eclipse配置文件传到服务器上,这时你先删除本地,再同步服务器,显然是不合理的.git提供了一个好的解决方法,可以直接删除服务器文件,同时不影响本地文件,命令如下 git rm --cached filename/-r directory git commit "xxxx" git push 1.删除服务器文件,本地保留 git rm --cached useless.log git com
-
Python通过递归获取目录下指定文件代码实例
这篇文章主要介绍了python通过递归获取目录下指定文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 获取一个目录下所有指定格式的文件是实际生产中常见需求. import os #递归获取一个目录下所有的指定格式的文件 def get_jsonfile(path,file_list): dir_list=os.listdir(path) for x in dir_list: new_x=os.path.join(path,x) if
-
ASP.NET导出Excel打开时提示:与文件扩展名指定文件不一致解决方法
"将页面显示的GridView中的数据,导出到Excel表格中"时遇到这样一个错误: C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致.具体提示如图: 解决办法:这里采用"修改注册表的方法"解决此问题,这并没从根上解决问题: 1.打开注册表编辑器方法:开始 -> 运行 -> 输入regedit -> 确定 2.找到注册表子项HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Exc
-
Java上传文件到服务器指定文件夹实现过程图解
核心原理: 该项目核心就是文件分块上传.前后端要高度配合,需要双方约定好一些数据,才能完成大文件分块,我们在项目中要重点解决的以下问题. *如何分片: *如何合成一个文件: *中断了从哪个分片开始. 如何分,利用强大的js库,来减轻我们的工作,市场上已经能有关于大文件分块的轮子,虽然程序员的天性曾迫使我重新造轮子.但是因为时间的关系还有工作的关系,我只能罢休了.最后我选择了百度的WebUploader来实现前端所需. 如何合,在合之前,我们还得先解决一个问题,我们如何区分分块所属那个文件的.刚开
-
C#将文件复制到指定文件夹并整理
下面是在C#中将文件复制(剪切是先复制再删除)到指定的路径,并按日期归档的一个简单实例.值得注意的2点是: 1)文件的路径是关键,程序中使用双斜杠\\ 2)文件和文件夹的区别 private void DoWork() { String dir="D:\\ABC" //创建备份文件夹,按时间命名 String bakDir = dir + "\\bak\\" + DateTime.Now.ToString("yyyy-MM-dd"); if (D
-
Linux查找包含指定文字的文件(linux查找指定文件)
在Linux下,查找包含字符串的文件使用的命令是grep.如果要查找包含**的文件,使用grep ** file是不行的,因为grep认为**是正则表达式,结果不可预料.正确的做法是:grep '\*\*' file比如: 复制代码 代码如下: [root@qzw www.vktone.com]# grep '\*\*' *.html */*.html >filtered.txt[root@qzw www.vktone.com]#
-
Python实现删除时保留特定文件夹和文件的示例
实现功能:删除当前目录下,除保留目录和文件外的所有文件和目录 #!bin/env python import os import os.path import shutil def DeleteFiles(path, remainDirsList, filesList): dirsList = [] dirsList = os.listdir(path) for f in dirsList: if f not in remainDirsList: filePath = os.path.join(
-
Python 实现删除某路径下文件及文件夹的实例讲解
Python 实现删除某路径下文件及文件夹的脚本 #!/usr/bin/env python import os import shutil delList = [] delDir = "/home/test" delList = os.listdir(delDir ) for f in delList: filePath = os.path.join( delDir, f ) if os.path.isfile(filePath): os.remove(filePath) print
随机推荐
- 配置IP地址的批处理代码
- jquery ajax提交整个表单元素的快捷办法
- ExtJS 配置和表格控件使用第1/2页
- 在Python中处理字符串之isdigit()方法的使用
- Array, Array Constructor, for in loop, typeof, instanceOf
- 分析10个ASP.NET控件最有用的属性详解
- PHP使用php-resque库配合Redis实现MQ消息队列的教程
- ASP 正则函数替换分页后的参数
- jQuery实现判断滚动条到底部
- windows的listview一样,而且不能把表头从表格里面独立出来
- JAVA SFTP文件上传、下载及批量下载实例
- JavaScript获取URL中参数querystring的方法详解
- Python爬虫之xlml解析库(全面了解)
- Android设计模式之Builder模式解析
- .NET(C#)连接各类数据库代码-集锦
- java微信开发API第三步 微信获取以及保存接口调用凭证
- Android UI组件LinearLayout线性布局详解
- PHP快速排序quicksort实例详解
- C#中string用法实例详解
- python使用time、datetime返回工作日列表实例代码