Python实现磁盘垃圾文件清理器

一、实验目的

熟练运用标准库os和os.path中的函数,理解sys库中argv成员用法,理解python程序接收命令行参数的方式,理解递归遍历目录树的原理。

二、实验所用仪器(或实验环境)

Python 3.6及以上版本

三、实验基本原理及步骤(或方案设计及理论计算)

实验内容:
编写程序,实现磁盘垃圾文件清理功能。要求程序运行时,通过命令行参数指定要清理的文件夹,然后删除该文件夹及其子文件夹中所有扩展名为tmp、log、obj、txt 以及大小为0 的文件。
实验步骤:

  • 1.查看帮助手册,了解os.path模块中的isdir,join,splittext,getsize方法,以及os库中的remove,listdir方法。
  • 2.编写一个函数,该函数带有一个参数为指定的文件夹。函数删除该文件夹及其子文件夹中所有指定的文件类型。

四、实验数据记录(或仿真及软件设计)

代码:

def delete_file(get_dir):
    if opt.isdir(get_dir):
        # print(type(os.listdir(argv[1]))) # 列表
        dir_lists = os.listdir(get_dir)
        print(dir_lists)
        for get_file in dir_lists:
            # 拼接路径
            get_file=os.path.join(get_dir,get_file)
            if opt.isdir(get_file):
                # 如果是文件夹,递归删除
                delete_file(get_file)
            else:
                result=opt.splitext(get_file)
                if ((result[1] in format) or (opt.getsize(get_file) == 0)):
                    os.remove(get_file)
                    print(get_file+"---->delete")


format=['.tmp','.log','.obj','.txt']
get_dir = argv[1]
delete_file(get_dir)

截图涉及个人隐私没截了…

发布了29 篇原创文章 · 获赞 1 · 访问量 933

猜你喜欢

转载自blog.csdn.net/qq_40505187/article/details/105180104