`
dqifa
  • 浏览: 112095 次
社区版块
存档分类
最新评论

python之os.walk()与os.path.walk()

 
阅读更多

os.walk()

函数声明:walk(top,topdown=True,onerror=None)

1、参数top表示需要遍历的目录树的路径

2、参数topdown的默认值是"True",表示首先返回目录树下的文件,然后在遍历目录树的子目录.Topdown的值为"False"时,则表示先遍历目录树的子目录,返回子目录下的文件,最后返回根目录下的文件

3、参数onerror的默认值是"None",表示忽略文件遍历时产生的错误.如果不为空,则提供一个自定义函数提示错误信息后继续遍历或抛出异常中止遍历

4、该函数返回一个元组,该元组有3个元素,这3个元素分别表示每次遍历的路径名,目录列表和文件列表

os,walk()实例:

 

import os

def VisitDir(path):

  for root,dirs,files in os.walk(path):

    for filespath in files:

      print os.path.join(root,filespath)

if __name__=="__main__":

path="/root"

VisitDir(path)

 

os.path.walk()

函数声明:walk(top,func,arg)

1、参数top表示需要遍历的目录树的路径

2、参数func表示回调函数,对遍历路径进行处理.所谓回调函数,是作为某个函数的参数使用,当某个时间触发时,程序将调用定义好的回调函数处理某个任务.回调函数必须提供3个参数:第1个参数为walk()的参数tag,第2个参数表示目录列表,第3个参数表示文件列表

3、参数arg是传递给回调参数func的元组.回调函数的一个参数必须是arg,为回调函数提供处理参数.参数arg可以为空

os.path.walk()实例:

 

import os,os.path

def VisitDir(arg,dirname,names):

  for filespath in name:

    print os.path.join(dirname,filespath)

if __name__=="__main__":

path="/root"

os.path.walk(path,VisitDir,())

 

os.path.walk()os.walk()产生的文件名列表并不相同.os.path.walk()产生目录树下的目录路径和文件路径,而os.walk()只产生文件路径

如下面的例程:

1 # -*- coding: utf-8 -*-

2 import os

3 for root, dirs, files in os.walk('/media/cdrom0'):

4 open('mycd.cdc', 'a').write("%s %s %s" % (root,dirs,files))

完成的功能是讲/media/cdrom0下的目录文件写入到mycd.cdc中。

代码解释:

1. 声明是 utf-8 编码文本;

 

2. 引入了 os 模块;

 

3. 使用os.walk() 扫描光盘,并返回三个对象;

 

4. 使用open()打开mycd.cdc 文件对象,并声明成追加模式,逐行记录以上三个对象。

 

Fromhttp://www.2cto.com/kf/201108/101784.html

分享到:
评论

相关推荐

    遍历[目录和文件](功能与python的os.walk一样)_walk函数_

    C++实现python的os模块的walk函数,可绝对路径,相对路径,源代码以及编译好的二进制可执行文件。

    Python使用os.listdir和os.walk获取文件路径

    情况1:在一个目录下面只有文件,没有文件夹,这个时候可以使用os.listdir 在我们的桌面上有一个file目录...print(os.path.join(path,filename)) 使用os.listdir读取到一个目录下面所有的文件名,然后使用os.p

    Python使用os.listdir()和os.walk()获取文件路径与文件下所有目录的方法

    在python3.6版本中去掉了os.path.walk()函数 os.walk() 函数声明:walk(top,topdown=True,oneerror=None) 1、参数top表示需要遍历的目录树的路径 2、参数农户topdown默认是”True”,表示首先返回根目录树下的文件...

    python文件合并.zip

    基于Anaconda/Jupyter(window)平台,使用python进行文件合并的相关脚本/教程,内容包括Anaconda程序安装步骤(windows),pd.concat, pd.read_excel, os.walk, os.path, os.mkdir, os.makedirs等函数介绍和脚本,...

    Python中os模块功能与用法详解

    本文实例讲述了Python中os模块功能与用法。分享给大家供大家参考,具体如下: OS模块 Python的os模块封装了常见的文件和目录操作,本文只是列出部分常用的方法,更多的方法可以查看官方文档。 下面是部分常见的用法...

    Python递归遍历目录下所有文件

    方式一: #!/usr/bin/python # -*- coding: utf-8 -*- import os def gci(filepath): #遍历filepath下所有文件,包括子目录 ...for fpathe,dirs,fs in os.walk('/root'): for f in fs: print(os.path.join(fpathe,f))

    python 获取文件下所有文件或目录os.walk()的实例

    在python3.6版本中去掉了os.path.walk()函数 os.walk() 函数声明:walk(top,topdown=True,oneerror=None) 1、参数top表示需要遍历的目录树的路径 2、参数农户topdown默认是”True”,表示首先返回根目录树下的文件,...

    Python利用递归和walk()遍历目录文件的方法示例

    就需要我们循环迭代出所有文件和子文件夹,Python中遍历指定目录下所有的文件和文件夹,包含多级目录,有两种方法,一种是通过递归思想去遍历,另一种是os模块的walk()函数下面话不多说,就来一起看看详细的介绍:...

    详谈Python3 操作系统与路径 模块(os / os.path / pathlib)

    以下代码以Python3.6.1 / windows10为例 Less is more! #!/usr/bin/env python # coding=utf-8 __author__ = 'Luzhuo' __date__ = '2017/5/7' import os def os_demo(): # 执行命令 dirs = os.popen("dir").read...

    python实现文件名批量替换和内容替换

    指定文件夹,指定文件类型,替换该文件夹下全部文件的内容。 注意在window下的读写...for (dirpath, dirnames, filenames) in os.walk(path): for file in filenames: if os.path.splitext(file)[1]==’.html’: 

    python.demo.py

    File "C:\Users\xieqianyun\AppData\Local\Programs\Python\Python36\lib\site-packages\scrapy\utils\misc.py", line 73, in walk_modules submod = import_module(fullpath) File "C:\Users\xieqianyun\App...

    图片打标签代码(python)(深度学习需要用到!)

    给包含在文件夹下的图片加标签(python) 千次阅读 2019-03-16 10:27:36 #!/usr/bin/env python ... for dirname, dirnames, filenames in os.walk(BASE_PATH): for subdirname in dirnames: subjec

    python压缩文件夹内所有文件为zip文件的方法

    本文实例讲述了python压缩文件夹内所有文件为zip文件的方法。分享给大家供大家参考。具体如下: 用这段代码可以用来打包自己的文件夹为zip,我就用这段代码来备份 ... z.write(os.path.join(dirpa

    python 搜索大文件的实例代码

    如下所示: ... for root,dirs,files in os.walk(pathname):#这里os.walk()遍历目录 for file in files: fname = os.path.abspath(os.path.join(root,file)) if os.path.getsize(fname)>filesize:

    python获取当前用户的主目录路径方法(推荐)

    Python获取当前用户的主目录路径, 示例代码如下: #! /usr/bin/python # -*- coding: utf-8 -*- import os print os.environ['HOME'] ... 您可能感兴趣的文章:Python使用os.listdir()和os.walk()获取文件路径与文

    python遍历一个目录,输出所有的文件名的实例

    python 获取一个文件夹内(包括子文件夹)所有文件的名字和路径 import os ...fns = [os.path.join(root,fn) for root, dirs, files in os.walk(path) for fn in files] for f in fns: print(f) print

    Python彻底删除文件夹及其子文件方式

    我就废话不多说了,直接上代码吧!... for fileList in os.walk(filePath): for name in fileList[2]: os.chmod(os.path.join(fileList[0],name), stat.S_IWRITE) os.remove(os.path.join(fileL

    python删除特定文件的方法

    本文实例讲述了python删除特定文件的... for root , dirs, files in os.walk(path): for name in files: if name.endswith(".CR2"): os.remove(os.path.join(root, name)) print ("Delete File: " + os.path.joi

    .svn 文件递归删除

    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 "Clean %s ..." % subpath;...

    Python遍历目录中的所有文件的方法

    os.walk(PATH), PATH是个文件夹路径,当然可以用.或者../这样啦. 返回的是个三元元组为元素的列表, 每个元素代表了一个文件夹下的内容.第一个就是当前文件夹下内容. 返回的三元元组代表(该工作文件夹, 该文件夹下的...

Global site tag (gtag.js) - Google Analytics