python fnmatch

import fnmatch
import os
import re
def fnmatch_filter_demo(path,pattern):
    for path,dir,filelist in os.walk(path):
        for name in fnmatch.filter(filelist,pattern):
            print os.path.join(path,name)
def fnmatch_demo(path,pattern):
    for path,dir,filelist in os.walk(path):
        for name in filelist:
            if  fnmatch.fnmatch(name,pattern):
                print os.path.join(path,name)
def re_demo(path,pattern):
    pattern=fnmatch.translate(pattern)
    for path,dir,filelist in os.walk(path):
        for name in filelist:
            m=re.search(pattern,name)
            if m:
                print os.path.join(path,name)
re_demo("/var/","*access*")

文件过滤,借助fnmatch或者通过re进行的

 fnmatch 实现shell patterns表匹配字符串或文件名 

1.fnmatch.fnmatch(name, pattern)

方法:测试name是否匹配pattern,返回true/false

2.fnmatch.filter(names, pat)

实现列表特殊字符的过滤或筛选,返回符合匹配模式的字符列表,当然names表示的是列表;

你可能感兴趣的:(python)