在众多Python应用技巧中,对于文件操作的相关方法是一个比较重要的应用技术。在这里我们会通过对Python递归的相关介绍,来了解一下其对文件操作所起到的作用,希望可以给大家带来一些帮助。#t#
专注于为中小企业提供网站设计制作、成都网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业汉寿免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了超过千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
Python递归在这里有两个需求:
删除某个目录以及子目录下的所有.svn文件
删除某个文件夹下所有文件
在Python中,Python递归中的文件操作主要来自os模块,主要方法如下:
Python递归删除目录下的svn代码:
- #!/usr/bin/env python
- #coding=utf-8
- import sys, os, stat
- def walk(path):
- for item in os.listdir(path):
- subpath = os.path.join(path, item)
- mode = os.stat(subpath)[stat.ST_MODE]
- if stat.S_ISDIR(mode):
- if item == ".svn":
- print "Cleaning %s " %subpath
- print "%d deleted" % purge(subpath)
- else:
- walk(subpath)
- def purge(path):
- count = 0
- for item in os.listdir(path):
- subpath = os.path.join(path, item)
- mode = os.stat(subpath)[stat.ST_MODE]
- if stat.S_ISDIR(mode):
- count += purge(subpath)
- else:
- os.chmod(subpath, stat.S_IREAD|stat.S_IWRITE)
- os.unlink(subpath)
- count += 1
- os.rmdir(path)
- count += 1
- return count
- if len(sys.argv) != 2:
- print "Usage: python cleansvn.py path"
- sys.exit(1)
- walk(sys.argv[1])删除某目录下所有文件和文件夹:
- Code
- #!/usr/bin/env python
- #coding=utf-8
- import os
- def delete_all_file(path):
- "delete all folers and files"
- if os.path.isfile(path):
- try:
- os.remove(path)
- except:
- pass
- elif os.path.isdir(path):
- for item in os.listdir(path):
- itemsrc = os.path.join(path, item)
- delete_all_file(itemsrc)
- try:
- os.rmdir(path)
- except:
- pass
- if __name__ == "__main__":
- dirname = r'F:\trunk'
- print delete_all_file(dirname)
以上就是我们对Python递归的相关介绍。
网站题目:使用Python递归对文件进行相关处理
标题网址:http://www.shufengxianlan.com/qtweb/news39/158039.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联