脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python3遍历目录树实现方法

Python3遍历目录树实现方法

2020-07-05 10:21work24 Python

这篇文章主要介绍了Python3遍历目录树实现方法,涉及Python目录树的遍历操作技巧,需要的朋友可以参考下

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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程序设计有所帮助。

延伸 · 阅读

精彩推荐