实验目的:
1、熟练运用标准库 os 和 os.path 中的函数。
2、理解 sys 库中 argv 成员用法。
3、理解 Python 程序接收命令行参数的方式。
4、理解递归遍历目录树的原理。
5、了解从命令提示符环境运行 Python 程序的方式。
实验内容:
编写程序,实现磁盘垃圾文件清理功能。要求程序运行时,通过命令行参数指定要清理的文件夹,然后删除该文件夹及其子文件夹中所有扩展名为 tmp、log、obj、txt 以及大小为 0 的文件。
下面展示一些 内联代码片
。
from os.path import isdir,join,splitext,getsize
from os import remove,listdir
import sys
filetypes=['.tmp','.log','.obj','.txt']
def delCertainFiles(diretory):
if not isdir(diretory):
return
for filename in listdir(diretory):
temp=join(diretory,filename)
if isdir(temp):
delCertainFiles(temp)
elif splitext(temp)[1] in filetypes or getsize(temp)==0:
remove(temp)
print(temp,'deleted...')
directory=sys.argv[1]
delCertainFiles(directory)