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

yipeiwu_com6年前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 Django模板之模板过滤器与自定义模板过滤器示例

本文实例讲述了Python Django模板之模板过滤器与自定义模板过滤器。分享给大家供大家参考,具体如下: 模板过滤器 过滤器用于对模板变量进行操作。 date:改变日期的显示格式。...

numpy.transpose对三维数组的转置方法

如下所示: import numpy as np 三维数组 arr1 = np.arange(16).reshape((2, 2, 4)) #[[[ 0 1 2 3] #...

在Python程序中实现分布式进程的教程

在Python程序中实现分布式进程的教程

在Thread和Process中,应当优选Process,因为Process更稳定,而且,Process可以分布到多台机器上,而Thread最多只能分布到同一台机器的多个CPU上。 Py...

深入浅出分析Python装饰器用法

本文实例讲述了Python装饰器用法。分享给大家供大家参考,具体如下: 用类作为装饰器 示例一 最初代码: class bol(object): def __init__(self...

pycharm远程开发项目的实现步骤

pycharm远程开发项目的实现步骤

你是不是在学习python的时候在使用虚拟机系统进行开发,来回切换很是不方便,那么今天给大家推荐一个pycharm强大的功能。 接下来我们利用这个django项目创建一个子app,测验...