Python3遍历目录树实现方法

yipeiwu_com5年前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程序设计有所帮助。

相关文章

Python2随机数列生成器简单实例

本文实例讲述了Python2随机数列生成器。分享给大家供大家参考,具体如下: #filename:randNumber.py import random while True:...

人生苦短我用python python如何快速入门?

假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Toturial)和速查手册(Che...

详解Python Matplotlib解决绘图X轴值不按数组排序问题

详解Python Matplotlib解决绘图X轴值不按数组排序问题

在用Matplotlib库绘制折线图的时候遇到一个问题,当定义一个x轴数组时,plot绘制折线图时,x轴并不会按照我们定义的数组的顺序去排列显示,例如: import matplot...

Python eval的常见错误封装及利用原理详解

最近在代码评审的过程,发现挺多错误使用eval导致代码注入的问题,比较典型的就是把eval当解析dict使用,有的就是简单的使用eval,有的就是错误的封装了eval,供全产品使用,这引...

python BeautifulSoup使用方法详解

直接看例子:复制代码 代码如下:#!/usr/bin/python# -*- coding: utf-8 -*-from bs4 import BeautifulSouphtml_doc...