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

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 文件对象,并声明成追加模式,逐行记录以上三个对象。

 

本文出自“pstary”

 

#!/usr/bin/python
import os


for root,dirs,files in os.walk(r'F:\test\a'):
# print ('root dir: ',root)
 for file in files:
  print(os.path.join(root,file))
 for dir in dirs:
  print(os.path.join(root,dir))

# for file in files:
#  print(file)

 

 

分享到:
评论

相关推荐

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

    Python的`os`模块提供了`os.walk()`函数,它能够方便地遍历一个目录树,递归地访问所有子目录及其包含的文件。这个功能在C++中也可以实现,尽管没有内置的直接等效函数。本文将探讨如何在C++中实现类似`os.walk()`的...

    python os.walk 遍历所有文件 文件夹(csdn)————程序.pdf

    在Python编程中,`os`模块提供了一系列与操作系统交互的功能,包括文件和目录操作。`os.walk()`函数是其中的一个重要方法,它用于遍历一个目录树,即递归地遍历目录及其所有子目录,并返回当前目录、子目录列表以及...

    python使用os.listdir和os.walk获得文件的路径的方法

    ### Python 使用 `os.listdir` 和 `os.walk` 获取文件路径的方法 #### 一、引言 在Python编程中,经常需要处理文件系统相关的任务,如读取目录中的文件列表、遍历目录树等。`os.listdir` 和 `os.walk` 是Python标准...

    python os模块.pdf

    Python的os模块是Python标准库中的一个重要模块,它提供了丰富的方法用于执行与操作系统交互的功能,比如文件和目录操作、进程管理等。本文档详细介绍了os模块在处理文件系统方面的各种函数和方法,是使用Python进行...

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

    ### Python使用os.listdir和os.walk获取文件路径 #### 一、引言 在日常的编程工作中,经常需要处理文件和目录的操作。Python 提供了多种内置模块来方便地完成这些任务,其中 `os` 模块是进行文件系统操作的重要工具...

    PYTHON常用模块.pdf

    - `os.path.walk(path, visit, arg)` 遍历目录结构并调用指定函数。 - `os.path.supports_unicode_filename` 表示系统是否支持Unicode文件名。 这些方法为Python程序员提供了对文件系统操作的强大支持,使得在...

    python os操作整理

    Python的os模块是用于操作系统相关的接口,而os.path则是os模块的一个子模块,专门处理路径相关的操作。在Python中,os.path提供了丰富的功能,帮助开发者处理文件和目录的路径问题,使得在不同操作系统上编写跨平台...

    Python常用模块os.path之文件及路径操作方法

    os.path.normpath, os.path.realpath, os.path.relpath, os.path.samefile, os.path.sameopenfile, os.path.samestat, os.path.splitdrive, os.path.splitunc, os.path.walk等,它们都用于提供关于文件路径的详尽...

    Python之os和pathlib模块比较.pdf

    Python是一种广泛使用的高级编程语言,它以其简洁的语法和强大的功能而受到开发者的青睐。在进行文件系统操作时,Python提供了多个模块以支持...但无论如何,熟悉这两个模块的操作都是Python编程中非常重要的技能之一。

    the introduction of python os.zip_OND3_python os模块简介_youthot3

    Python的os模块是标准库中的一个核心组件,它提供了与操作系统交互的各种功能,适用于各种操作系统,包括Windows、Linux、Unix等。os模块是Python程序员在处理文件和目录时的得力助手,它使得操作文件系统变得更为...

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

    在Python 3.6中,已经废弃了os.path.walk()函数,取而代之的是os.walk()函数。本文将详细介绍os.walk()的使用方法,并通过实例说明如何利用os.walk()获取指定文件夹下所有文件和目录的信息。 首先,os.walk()函数的...

    对python中的 os.mkdir和os.mkdirs详解

    os.walk(path)函数能够做到这一点,返回一个迭代器,它会遍历path下的每一个目录,并返回一个三元组,包含当前目录的路径、它包含的子目录列表和文件列表。 os.path模块提供了两个用于检查路径类型的函数: - os....

    python常用模块.docx

    ### Python核心模块详解:OS与OS.Path模块及Stat模块 #### OS模块介绍 Python的`os`模块提供了诸多用于与操作系统交互的功能。该模块包含了多种功能,如文件处理、目录管理以及系统信息查询等,非常适用于开发需要...

    os用法总结:python中必须掌握的内置模块os,实现与计算机操作系统的常规交互!.pdf

    1. 探索os模块中的更多函数,如`os.walk()`用于遍历目录树,`os.listdir(path)`列出目录中的所有文件和子目录。 2. 学习使用`os.fork()`和`os.exec*()`系列函数来创建和管理子进程。 3. 熟悉`os.error`异常,它在os...

    Python常用模块宣贯.pdf

    - `os.path.walk(path, visit, arg)`: 遍历路径下的所有子目录,对每个子目录调用`visit`函数。 - `os.path.supports_unicode_filenames()`: 检查操作系统是否支持Unicode路径名。 4. `stat`模块: - `os.stat...

    python提取所有文件夹名和文件名.rar

    首先,os模块是Python内置的一个用于操作系统交互的模块,它提供了许多与操作系统相关的功能,包括访问文件和目录。要提取所有文件夹名和文件名,我们可以使用os模块中的`os.walk()`函数。`os.walk()`会遍历指定路径...

    Pythonos模块操作方法详解共3页.pdf.zip

    Python的os模块是Python标准库中的一个重要组成部分,它提供了与操作系统交互的各种功能。这个模块使得在Python中进行文件和目录操作变得极其方便,无论是Linux、Windows还是Mac OS,Pythonos模块都能提供相应的接口...

Global site tag (gtag.js) - Google Analytics