四川省城乡建建设人事考试网站,建设网站怎么做,如何建设一个个人网站,com域名和精品vip域名哪个好前言大家应该都有所体会#xff0c;在windows系统使用久了就会产生一些“垃圾”文件。这些文件有的是程序的临时文件#xff0c;有的是操作记录或日志等。垃圾随着时间越积越多#xff0c;导致可用空间减少#xff0c;文件碎片过多#xff0c;使得系统的运行速度受到一定影…前言大家应该都有所体会在windows系统使用久了就会产生一些“垃圾”文件。这些文件有的是程序的临时文件有的是操作记录或日志等。垃圾随着时间越积越多导致可用空间减少文件碎片过多使得系统的运行速度受到一定影响。而Mac系统和Linux系统并不存在这类问题所以只适用于windows知识概要某些缓存文件可以提高程序的执行速度比如缓存 cookie、使用记录 recent、预读取 prefetch 等。所以清理临时文件并不代表系统运行就会变快有时也可能变慢。windows电脑中的垃圾文件及文件夹主要有哪些系统盘 %system% 下文件类型【临时文件(*.tmp)】【临时文件(*._mp)】【日志文件(*.log)】【临时帮助文件(*.gid)】【磁盘检查文件(*.chk)】【临时备份文件(*.old)】【Excel备份文件(*.xlk)】【临时备份文件(*.bak)】用户目录 %userprofile% 下文件夹【COOKIE】 cookies\*.*【文件使用记录】 recent\*.*【IE临时文件】 Temporary Internet Files\*.*【临时文件文件夹】 Temp\*.*Windows 目录 %windir% 下文件夹【预读取数据文件夹】 prefetch\*.*【临时文件】 temp\*.*获取文件地址操作需要os模块如获取工作目录import osprint os.getcwd() # E:\\PythonSource\\leanr_py切换工作目录os.chdir(d://wamp)print os.getcwd() # d:\\wamp获取系统盘符:os.environ[systemdrive] # C:获取用户目录:os.environ[userprofile] # C:\\Users\\Administrator获取 Windows 目录:os.environ[windir] # C:\\Windows遍历目录要想遍历文件夹需要用到 os.walk(top,topdownTrue,οnerrοrNone)参数top表示需要遍历的顶级目录的路径。参数topdown的默认值是“True”表示首先返回顶级目录下的文件然后再遍历子目录中的文件。当topdown的值为False时表示先遍历子目录中的文件然后再返回顶级目录下的文件。参数onerror默认值为None表示忽略文件遍历时的错误。如果不为空则提供一个自定义函数提示错误信息后继续遍历或抛出异常中止遍历。返回值函数返回一个元组含有三个元素。这三个元素分别是每次遍历的路径名、路径下子目录列表、目录下文件列表。for roots, dirs, files in os.walk(d://wamp, topdownFalse)# roots 文件夹路径 dirs 该目录下的文件夹列表 files文件列表print roots # d://wampprint dirs # [bin, www, alias]print files # [wampmanage.conf, 1.txt]判断是否垃圾文件os.path.splitext()可以对文件名进行切割extension os.path.splitext(raaa\bbb\ccc.ddd) # (aaa\\bbb\\ccc, .ddd)if extension[1] in [.tmp, .bak]:print 是垃圾文件删除文件删除文件与删除文件夹调用的是不同的函数。# 删除文件os.remove(d:temporary/test/test.txt)# 删除文件夹os.rmdir(d:temporary/test/empty)os.rmdir 只能删除空文件夹如果文件夹非空则会报错。所以应该用:shutil.rmtree(d:/dir1/dir2/aaa)文件正在运行或者受到保护、当前账户没有足够权限时删除会报错。最后整理删除函数为def del_dir_or_file(root):try:if os.path.isfile(root):# 删除文件os.remove(root)print file: root removedelif os.path.isdir(root):# 删除文件夹shutil.rmtree(root)print directory: root removedexcept WindowsError:print failure: root cant remove获取文件大小# 显示文件夹(路径)大小单位 biteos.path.getsize(d://temporary/test) # 4096# 文件大小os.path.getsize(d://temporary/test/aaa.txt) # 135完整程序注意由于牵涉到文件删除操作请在动手前务必反复确认代码万一导致什么重要文件被删.务必确认务必确认务必确认import osimport jsonimport shutildel_extension {.tmp: 临时文件,._mp: 临时文件_mp,.log: 日志文件,.gid: 临时帮助文件,.chk: 磁盘检查文件,.old: 临时备份文件,.xlk: Excel备份文件,.bak: 临时备份文件bak}del_userprofile [cookies, recent, Temporary Internet Files, Temp]del_windir [prefetch, temp]# 获取系统盘SYS_DRIVE os.environ[systemdrive] \\# 获取用户目录USER_PROFILE os.environ[userprofile]# 获取 Windows 目录WIN_DIR os.environ[windir]# 获取当前路径 os.getcwd() E:\\Software\\Python27# 跳转至指定的文件目录 os.chdir(d://wamp)# 获取系统盘符 os.environ[systemdrive] C:# 获取用户目录 os.environ[userprofile] C:\\Users\\Administrator# 获取 Windows 目录 os.environ[windir] C:\\Windowsdef del_dir_or_file(root):try:if os.path.isfile(root):# 删除文件os.remove(root)print file: root removedelif os.path.isdir(root):# 删除文件夹shutil.rmtree(root)print directory: root removedexcept WindowsError:print failure: root cant remove# 字节bytes转化kb\m\gdef formatSize(bytes):try:bytes float(bytes)kb bytes / 1024except:print(传入的字节格式不对)return Errorif kb 1024:M kb / 1024if M 1024:G M / 1024return %fG % (G)else:return %fM % (M)else:return %fkb % (kb)class DiskClean(object):def __init__(self):self.del_info {}self.del_file_paths []self.total_size 0for k,v in del_extension.items():self.del_info[k] dict(name v, count 0)def scan(self):for roots, dirs, files in os.walk(USER_PROFILE, topdownFalse):# 生成并展开以 root 为根目录的目录树参数 topdown 设定展开方式从底层到顶层for file_item in files:# 获取扩展名file_extension os.path.splitext(file_item)[1]# print os.path.join(roots, file_item)if file_extension in self.del_info:# 文件完整路径file_full_path os.path.join(roots, file_item)self.del_file_paths.append(file_full_path)self.del_info[file_extension][count] 1self.total_size os.path.getsize(file_full_path)def show(self):print json.dumps(self.del_info, indent4, ensure_asciiFalse)print 删除可节省:%s 空间 % formatSize(self.total_size)def delete_files(self):for i in self.del_file_paths:del_dir_or_file(i)if __name__ __main__:cleaner DiskClean()cleaner.scan()cleaner.show()if_del raw_input(是否删除y/n:)if if_del y:cleaner.delete_files()总结最近在看一些qt界面的内容。可以结合做一个有图形界面的程序 。以上就是这篇文章的全部内容了希望本文的内容对大家的学习或者工作能带来一定的帮助如果有疑问大家可以留言交流。