欢迎来到山村网

Python实现删除文件但保留指定文件

2019-03-02 14:16:20浏览:766 来源:山村网   
核心摘要:  这篇文章主要介绍了Python实现删除文件但保留指定文件,本文直接给出实现代码,并同时给出代码解释,需要的朋友可以参考下  

  这篇文章主要介绍了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'a1.txt'],然后将path和filelist拼接起来存放到另一个列表中就是你希望保存文件的完整路径存放在DestPathList中,既['D:publish1.txt','D:publisha1.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中元素进行比对,如果不相同则删除文件

  功能虽然简单,但工作中还是比较实用的,故在此留下脚印。

(责任编辑:豆豆)
下一篇:

Pthon批量处理将pdb文件生成dssp文件

上一篇:

Python ValueError: invalid literal for int() with base 10 实用解决方法

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com