Python3遍历目录树实现方法

yipeiwu_com6年前Python基础

本文实例讲述了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程序设计有所帮助。

相关文章

PyQt5 pyqt多线程操作入门

首先来看一个例子: # coding=utf-8 __author__ = 'a359680405' from PyQt5.QtCore import * from PyQ...

python脚本实现数据导出excel格式的简单方法(推荐)

实习期间,服务器的一位师兄让我帮忙整理一下服务器的log数据,最终我用Python实现了数据的提取并将其用Excel格式导出。下面是我Python实现的源码,可以自动遍历某一文件目录下的...

Python列出一个文件夹及其子目录的所有文件

python简介 Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。 Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991...

python 生成器协程运算实例

一、yield运行方式 我们定义一个如下的生成器: def put_on(name): print("Hi {}, 货物来了,准备搬到仓库!".format(name)) wh...

python 模拟银行转账功能过程详解

python 模拟银行转账功能过程详解

首先画出流程图,流程图与现实代码有出入,因为刚开始画流程图的时候,有些东西没考虑进去,后来写着写着就慢慢能想起来并实现了。 另有一点经验推荐给新手朋友,如果说碰到一个项目无从下手的话,...