所以我想打开目录中的每个文件(此目录中有5个纯文本文档)。并做一些事情,比如找到每个文件中的特定单词。
这是我使用的代码,但似乎结果全部堆叠在一起,而不是每个文件。
import re
import os
path = 'C:\Python27\projects\Alabama\New folder'
pattern = re.compile(r"\bshall\b")
pattern1 = re.compile(r"\bmay\b")
pattern2 = re.compile(r"\bmust\b")
for filenames in os.listdir(path):
with open(filenames, 'r') as myfile:
for string in myfile:
m = re.findall(pattern, string)
m1 = re.findall(pattern1, string)
m2 = re.findall(pattern2,string)
k = len(m)
k1 = len(m1)
k2 = len(m2)
print m,m1,m2,k,k1,k2
我的问题是如何为目录单独中的每个文件执行re.findall函数,而不是堆叠输出。
谢谢!