Python3遍历目录树实现方法

本文实例讲述了Python3遍历目录树的方法。分享给大家供大家参考。具体实现方法如下:

import os, fnmatch
# 检查一个目录,后者某个包含子目录的目录树,并根据某种模式迭代所有文件
# patterns如:*.html,若大小写敏感可写*.[Hh][Tt][Mm][Ll]
# single_level 为True表示只检查第一层
# yield_folders 表示是否显示子目录,为False只遍历子目录中的文件,
# 但不返回字母名
def all_files(root, patterns='*', single_level=False, yield_folders=False):
  # 将模式从字符串中取出放入列表中
  patterns = patterns.split(';')
  for path, subdirs, files in os.walk(root):
    if yield_folders:
      files.extend(subdirs)
    files.sort()
    for name in files:
      for pattern in patterns:
        if fnmatch.fnmatch(name, pattern):
          yield os.path.join(path, name)
          break
    if single_level:
      break
for file in all_files('d:\\pm', '*.s;*.c', False, False):
  print(file)

希望本文所述对大家的Python3程序设计有所帮助。

(0)

相关推荐

  • Python遍历目录并批量更换文件名和目录名的方法

    本文实例讲述了Python遍历目录并批量更换文件名和目录名的方法.分享给大家供大家参考,具体如下: #encoding=utf-8 #author: walker #date: 2014-03-07 #summary: 深度遍历指定目录,并将子目录和文件名改为小写 #注意,此程序只针对windows,windows下文件(夹)名不区分大小写 import os import os.path import shutil #读入指定目录并转换为绝对路径 rootdir = raw_input('ro

  • Python通过递归遍历出集合中所有元素的方法

    本文实例讲述了Python通过递归遍历出集合中所有元素的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: '''''通过递归遍历出集合中的所有元素 Created on 2013-9-29 @author: L.Eric '''  def print_List(list_nums):      for each_item in list_nums :           if isinstance(each_item,list):              print_Lis

  • Python遍历目录的4种方法实例介绍

    1.os.popen运行shell列表命令 复制代码 代码如下: def traverseDirByShell(path):     for f in os.popen('ls ' + path):         print f.strip() 2.利用glob模块 glob.glob(path)返回带目录的文件名.通配符和shell相似.path不能包含shell变量. 复制代码 代码如下: def traverseDirByGlob(path):     path = os.path.ex

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

    前言 经常需要检查一个"目录或文件夹"内部有没有我们想要的文件或者文件夹,就需要我们循环迭代出所有文件和子文件夹,Python中遍历指定目录下所有的文件和文件夹,包含多级目录,有两种方法,一种是通过递归思想去遍历,另一种是os模块的walk()函数下面话不多说,就来一起看看详细的介绍: 列出目录结构 一.递归方法 #coding:utf-8 import os allfile=[] def getallfile(path): allfilelist=os.listdir(path) f

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

    os.walk生成器 os.walk(PATH), PATH是个文件夹路径,当然可以用.或者../这样啦. 返回的是个三元元组为元素的列表, 每个元素代表了一个文件夹下的内容.第一个就是当前文件夹下内容. 返回的三元元组代表(该工作文件夹, 该文件夹下的文件夹的列表, 该文件夹下文件的列表). 所以, 获得所有子文件夹, 就是(d代表这三元元组): os.path.join(d[0],d[1]); 获得所有子文件, 就是: os.path.join(d[0],d[2]); 以下例子使用了两套循环

  • python目录操作之python遍历文件夹后将结果存储为xml

    Linux服务器有CentOS.Fedora等,都预先安装了Python,版本从2.4到2.5不等,而Windows类型的服务器也多数安装了Python,因此只要在本机写好一个脚本,上传到对应机器,在运行时修改参数即可. Python操作文件和文件夹使用的是os库,下面的代码中主要用到了几个函数: os.listdir:列出目录下的文件和文件夹os.path.join:拼接得到一个文件/文件夹的全路径os.path.isfile:判断是否是文件os.path.splitext:从名称中取出一个子

  • python文件操作之目录遍历实例分析

    本文实例讲述了python文件操作之目录遍历的方法.分享给大家供大家参考.具体分析如下: Python的os模块,包含了普遍的操作系统功能,这里主要学习与路径相关的函数: os.listdir(dirname):列出dirname下的目录和文件 os.getcwd():获得当前工作目录 os.curdir:返回当前目录('.') os.chdir(dirname):改变工作目录到dirname os.path.isdir(name):判断name是不是一个目录,name不是目录就返回false

  • Python递归遍历列表及输出的实现方法

    本文实例讲述了Python递归遍历列表及输出的实现方法.分享给大家供大家参考.具体实现方法如下: def dp(s): if isinstance(s,(int,str)): print(s) else: for item in s: dp(item) l=['jack',('tom',23),'rose',(14,55,67)] dp(l) 运行结果如下: jack tom 23 rose 14 55 67 希望本文所述对大家的Python程序设计有所帮助.

  • python遍历目录的方法小结

    本文实例总结了python遍历目录的方法.分享给大家供大家参考,具体如下: 方法一使用递归: """ def WalkDir( dir, dir_callback = None, file_callback = None ): for item in os.listdir( dir ): print item; fullpath = dir + os.sep + item if os.path.isdir( fullpath ): WalkDir( fullpath, dir

  • Python实现递归遍历文件夹并删除文件

    思路: 遍历文件夹下面的文件夹 如果文件夹名称等于".svn",则修改文件夹的属性(因为".svn"的文件都是只读的,你不能直接删除) 删除此文件夹 如果文件夹名称不等于".svn",则递归上面的方法 Python的实现 代码 import os import shutil import os.path import stat rootdir="F:\\work\\Test" for parent,dirnames,filen

随机推荐