【发布时间】:2012-03-14 16:58:47
【问题描述】:
我正在尝试在目录树中查找文件列表。本质上,我提供了一个文本文件,其中包含我想要搜索的所有术语 (~500),并让它在目录和子目录中查找它们。但是,我有问题 - 我相信 - 代码采取和过早结束的步骤而没有在所有文件夹中搜索。
我使用的代码是(pattern 是文本文件的名称):
import os
def locateA(pattern, root):
file = open(pattern, 'r')
for path, dirs, files in os.walk(root):
for word in files:
for line in file:
if line.strip() in word:
print os.path.join(path, word), line.strip()
关于我错在哪里的任何想法?
【问题讨论】:
-
我建议使用构造
with open(pattern, 'rU') as f:并且不要调用你的文件file因为file是内置模块中的一个类。 -
将文件名更改为其他名称。我会调查你提到的结构。
-
那么问题的症状究竟是什么?
标签: python file search directory