先看下代码:

import os

for i in os.walk('c:'+os.sep+'ant'):

print i[0]

下面是输出:

c:\ant

c:\ant\bin

c:\ant\docs

c:\ant\docs\ant2

c:\ant\docs\antlibs

c:\ant\docs\antlibs\antunit

c:\ant\docs\antlibs\compress

c:\ant\docs\antlibs\dotnet

c:\ant\docs\antlibs\props

后面还有很长.

如果不使用这个方法,遍历同样能达到效果.不过使用 os.walk 方便很多了.

这个方法返回的是一个三元tupple(dirpath, dirnames, filenames),

其中:

第一个为起始路径,

第二个为起始路径下的文件夹,

第三个是起始路径下的文件.

dirpath是一个string,代表目录的路径,

dirnames是一个list,包含了dirpath下所有子目录的名字,

filenames是一个list,包含了非目录文件的名字.这些名字不包含路径信息,如果需要得到全路径,需要使用 os.path.join(dirpath, name).

下面是可以看到 os.walk 方法返回的内容.

代码:

import os

for i in os.walk('c:'+os.sep+'ant'):

print i输出: ('c:\\ant', ['bin', 'docs', 'etc', 'lib', 'Project'], ['fetch.xml', 'get-m2.xml', 'INSTALL', 'KEYS', 'LICENSE', 'NOTICE', 'README', 'WHATSNEW'])

('c:\\ant\\bin', [], ['ant', 'ant.bat', 'ant.cmd', 'antenv.cmd', 'antRun', 'antRun.bat', 'antRun.pl', 'complete-ant-cmd.pl', 'envset.cmd', 'lcp.bat', 'runant.pl', 'runant.py', 'runrc.cmd'])

('c:\\ant\\docs', ['ant2', 'antlibs', 'images', 'manual', 'projects', 'slides', 'webtest'], ['antnews.html', 'ant_in_anger.html', 'ant_task_guidelines.html', 'appendix_e.pdf', 'breadcrumbs.js', 'bugs.html', 'bylaws.html', 'contributors.html', 'external.html', 'faq.html', 'favicon.ico', 'index.html', 'legal.html', 'LICENSE', 'license.html', 'mail.html', 'mission.html', 'nightlies.html', 'page.css', 'problems.html', 'projects.html', 'resources.html', 'svn.html'])

('c:\\ant\\docs\\ant2', [], ['actionlist.html', 'features.html', 'FunctionalRequirements.html', 'original-specification.html', 'requested-features.html', 'requested-features.txt', 'VFS.txt'])

('c:\\ant\\docs\\antlibs', ['antunit', 'compress', 'dotnet', 'props', 'svn'], ['bindownload.cgi', 'bindownload.html', 'charter.html', 'index.html', 'proper.html', 'sandbox.html', 'srcdownload.cgi', 'srcdownload.html'])

('c:\\ant\\docs\\antlibs\\antunit', [], ['index.html'])

('c:\\ant\\docs\\antlibs\\compress', [], ['index.html'])

('c:\\ant\\docs\\antlibs\\dotnet', [], ['index.html'])

('c:\\ant\\docs\\antlibs\\props', [], ['index.html'])...

当然后面还有很长了. 有了这个函数无论是遍历文件夹,还是遍历文件都很方便.

python os.walk遍历目录_Python 用 os.walk 遍历目录相关推荐

  1. python os.walk遍历目录_python中os.walk()遍历目录中所有文件

    之前一直用判断目录和文件的递归方法来获取一个目录下的所有文件,后来发现python里面已经写好了这个函数,不需要自己递归获取了,记录下os.walk()函数的用法 目的:获取path下所有文件,返回由 ...

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

    在python3.6版本中去掉了os.path.walk()函数 os.walk() 函数声明:walk(top,topdown=True,oneerror=None) 1.参数top表示需要遍历的目 ...

  3. python如何查询文件路径_Python使用os.listdir和os.walk获取文件路径

    情况1:在一个目录下面只有文件,没有文件夹,这个时候可以使用os.listdir 在我们的桌面上有一个file目录(文件夹),里面有三个文件 file(dir)| --|test1.txt --|te ...

  4. python os模块创建文件_Python使用os模块和fileinput模块来操作文件目录

    os模块在python编程中,我们会经常使用到文件和目录,这些操作python提供一个os模块,里面有很多操作文件和目录的函数. 下面介绍os的常用功能 1.获取当前路径 >>> o ...

  5. python 重命名的方法_Python下OS模块重命名方法renames

    在python中有很多强大的模块,其中我们经常要使用的就是OS模块,OS模块提供了超过200个方法来供我们使用,并且这些方法都是和数据处理相关的,这里介绍下重命名这个方法. OS的重命名方法是os.r ...

  6. python标准库os中的方法_python中OS常用方法

    下面列出了一些在os模块中比较有用的部分.它们中的大多数都简单明了. os.sep可以取代操作系统特定的路径分隔符.windows下为 "\\" os.name字符串指示你正在使用 ...

  7. python os是什么意思_python里os是什么意思?

    os是operation system(操作系统)的缩写,这个库就是对操作系统的封装.os模块提供了多数操作系统的功能接口函数. 常用的os模块命令: 1.os.name--name顾名思义就是'名字 ...

  8. python中exists什么意思_python:os.path.exists(path) 和 os.path.lexists(path) 的区别

    题目: python:os.path.exists(path) 和 os.path.lexists(path) 的区别 os.path.exists(path) Return True if path ...

  9. python 如何获取文件路径_Python如何获取文件路径/目录

    一.获取文件路径实现 1.1 获取当前文件路径 import os current_file_path = __file__ print(f"current_file_path: {curr ...

  10. python 删除文件、目录_python实现删除文件与目录的方法

    本文实例讲述了python实现删除文件与目录的方法.分享给大家供大家参考.具体实现方法如下: os.remove(path)删除文件 path. 如果path是一个目录, 抛出 OSError错误.如 ...

最新文章

  1. 10-20国际标准导联系统
  2. VTK修炼之道27:图像基本操作_三维图像切片交互提取(回调函数、观察者-命令模式)
  3. 揭开互联网公司的神秘面纱,数据解读那些slay整个行业的互联网公司
  4. ediplus 复制编辑一列_vi编辑器的使用详解
  5. 计算理论入门 1.1 命题逻辑
  6. Altium AD20电源分割的方法,AD内电层的电源分割,AD电源层电源分割
  7. 简单的学习一下node吧——还在学习中~~~
  8. vscode regex previewer插件怎么用_分享五款开挂神器!助你效率倍增!做PPT怎么能不会用插件?...
  9. vscode-更换图标主题VSCode Icons.
  10. java 按钮不可用_java – 如何使按钮不可点击
  11. ABC类网络个数的算法
  12. java开发面试自我介绍模板_java面试自我介绍范文
  13. 【防火墙篇】01. 恢复出厂设置 ❀ Juniper 防火墙
  14. Ubuntu 2004 鼠标可以移动但是点击无响应 排查流程
  15. 固态硬盘usb测试软件,固态硬盘检测修复坏道三级OP设置软件HDAT2 5.3 ISO版
  16. 计算机vb基础知识,计算机VB基础知识---知识导学.doc
  17. 国内优秀的设计公司有哪些?
  18. CVPR2022:Generalizable Cross-modality Medical Image Segmentation via StyleAugmentation and Dual Norm
  19. autoHotkey — 连击/双击/重复 按键触发
  20. 计算机基础知识大眼睛,眼睛知识

热门文章

  1. Datax将Oracle数据导入ElasticSearch7完成教程
  2. java 反射data类型_java反射机制系列之初识Java Reflection
  3. NYOJ--C语言---Fibonacci数递归迭代两种解法
  4. git linux 部署网站,centos 搭建git自动部署web应用
  5. shell:判断某个变量是否包含字符串/变量的方法
  6. Maven 仓库、镜像
  7. 员工激励手段1+1组合出击
  8. Windows下Java调用BAT批处理不弹出cmd窗口
  9. 借伞,取经,停车,合作.
  10. a20添加usb2net的驱动方法