Python 问题 文件及文件夹
最近自学Python,请教一些问题:1、删除指定目录(包括此目录及其一下的文件和文件夹,即所有文件)2、支持支持通配符*或?或其他符号(例:'*:\\system\\te...
最近自学Python,请教一些问题:
1、删除指定目录(包括此目录及其一下的文件和文件夹,即所有文件)
2、支持支持通配符*或?或其他符号(例:'*:\\system\\text(*).txt','*:\\*\\*.tx*')
3、删除在任意(所有)目录下的文件及文件夹(例:*\\_palbtn\\*)
4、计算以上删除目录的总大小并显示出来(最好能分盘,C盘多少,E盘多少)
删除文件我能做到,可后三个问题,请帮帮忙,知道用os和glob模块,可不会写出具体源码。能不能写出详细源码,我学习学习,谢谢
发到我邮箱ljhwz@139.com 展开
1、删除指定目录(包括此目录及其一下的文件和文件夹,即所有文件)
2、支持支持通配符*或?或其他符号(例:'*:\\system\\text(*).txt','*:\\*\\*.tx*')
3、删除在任意(所有)目录下的文件及文件夹(例:*\\_palbtn\\*)
4、计算以上删除目录的总大小并显示出来(最好能分盘,C盘多少,E盘多少)
删除文件我能做到,可后三个问题,请帮帮忙,知道用os和glob模块,可不会写出具体源码。能不能写出详细源码,我学习学习,谢谢
发到我邮箱ljhwz@139.com 展开
2个回答
展开全部
import os
import shutil
import glob
import stat
def getDirSize(dir):
size = 0
for root, dirs, files in os.walk(dir):
size += sum([os.path.getsize(os.path.join(root, name)) for name in files])
return size
def removePath( path ):
if os.path.isdir( path ): #如果是文件夹
size=getDirSize(dir): #返回总大小
shutil.rmtree(path) #删除目录树
else: #如果是文件
size=os.path.getsize(path)
os.remove(path)
return size
#--------------
#删除指定目录下所有文件夹和文件
removePath(yourDir)
#通配符
totalSize=0
for f in glob.glob(r'd:/*/*.txt')
totalSize+=removePath(f)
print totalSize
代码未经调试
import shutil
import glob
import stat
def getDirSize(dir):
size = 0
for root, dirs, files in os.walk(dir):
size += sum([os.path.getsize(os.path.join(root, name)) for name in files])
return size
def removePath( path ):
if os.path.isdir( path ): #如果是文件夹
size=getDirSize(dir): #返回总大小
shutil.rmtree(path) #删除目录树
else: #如果是文件
size=os.path.getsize(path)
os.remove(path)
return size
#--------------
#删除指定目录下所有文件夹和文件
removePath(yourDir)
#通配符
totalSize=0
for f in glob.glob(r'd:/*/*.txt')
totalSize+=removePath(f)
print totalSize
代码未经调试
参考资料: http://www.phpfans.net/article/htmls/201004/Mjg0MDAy.html
展开全部
还是看看python的api吧:http://docs.python.org/py3k/library/filesys.html
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询