读取包含txt文件的目录

时间:2013-04-03 14:09:34

标签: python parsing

def isim():
    fh = open('hash.txt')
    for line in fh:
        if re.search('Unique description', line):
            print(line, end='')
def main():
    isim()

if __name__ == "__main__": main()

我的问题是如何读取目录中的所有文本文件而不是hash.txt

2 个答案:

答案 0 :(得分:3)

使用glob模块。

import re
import glob
def isim():
    textfiles = glob.glob(r"C:\mydir\*.txt")
    for fh in textfiles:
        for line in open(fh):
            if re.search('Unique description', line):
                print(line, end='')
def main():
    isim()

if __name__ == "__main__": main()

答案 1 :(得分:1)

使用os.listdir()列出目录的内容;然后,您可以根据需要添加一个简单的文件名过滤器:

path = '/some/directory'
for filename in os.listdir(path):
    if not filename.endswith('.txt'):
        continue
    filename = os.path.join(path, filename)
    with open(filename, 'r') as fh:
        for line in fh:
            if re.search('Unique description', line):
                print(line, end='')