磁盘垃圾文件清理器python代码实现

yipeiwu_com7年前Python基础

本文假设某些特定类型的文件和大小为0的文件为垃圾文件,可以自由扩展代码的列表,也就是垃圾文件的类型。

from os.path import isdir, join, splitext
from os import remove, listdir, chmod, stat
import sys

#指定要删除的文件类型
filetypes = ['.tmp', '.log', '.obj', '.txt']

def delCertainFiles(directory):
 for filename in listdir(directory):
 temp = join(directory, filename)
 if isdir(temp):
  #递归调用
  delCertainFiles(temp)
 elif splitext(temp)[1] in filetypes or stat(temp).st_size==0:
  #修改文件属性,获取访问权限
  chmod(temp, 0o777)
  #删除文件
  remove(temp)
  print(temp, ' deleted....')

if __name__ == '__main__':
 paths = sys.argv[1:]
 for path in paths:
 if isdir(path):
  delCertainFiles(path)

把上面的代码保存为t.py,然后打开命令提示符窗口,执行命令“Python t.py c:\test”,其中“c:\test”表示要清理的文件夹,如果有多个文件夹要清理的话,可以使用空格隔开。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python中使用元类的教程

type() 动态语言和静态语言最大的不同,就是函数和类的定义,不是编译时定义的,而是运行时动态创建的。 比方说我们要定义一个Hello的class,就写一个hello.py模块:...

浅谈Python对内存的使用(深浅拷贝)

本文主要研究的是Python对内存的使用(深浅拷贝)的相关问题,具体介绍如下。 浅拷贝就是对引用的拷贝(只拷贝父对象) 深拷贝就是对对象的资源的拷贝 >>> a...

Pycharm 2020年最新激活码(亲测有效)

PyCharm 具备一般 IDE 的功能,比如,调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制…另外,PyCharm 还提供了一些很好的功能用于 Django...

Python选择排序、冒泡排序、合并排序代码实例

前两天刚装了python 3.1.1, 禁不住技痒写点code。 1.选择排序 复制代码 代码如下: >>> def SelSort(L):   &...

python创建列表并给列表赋初始值的方法

本文实例讲述了python创建列表并给列表赋初始值的方法。分享给大家供大家参考。具体如下: aList = [123, 'abc', 4.56, ['inner', 'list'],...