Я пытаюсь заставить работать простой код, к сожалению, я новичок в Python.
Мой скрипт должен возвращать список файлов, которые не соответствуют шаблону, дополнительную информацию здесь:
Python grep обратное соответствие
Мой код работает, но не обрабатывает полный список найденных файлов, как следует:
import sys,os
filefilter = ['.xml','java','.jsp','lass']
path= "/home/patate/code/project"
s = "helloworld"
for path, subdirs, files in os.walk(path):
for name in files:
if name[-4:] in filefilter :
f = str(os.path.join(path, name))
with open(f) as fp:
if s in fp.read():
print "%s has the string" % f
else:
print "%s doesn't have the string" % f
Этот код возвращает:
/ home / patate / code / project / blabla / blabla / build.xml не содержит строку
нет
Если я изменюсь f = str(os.path.join(path, name)) for print str(os.path.join(path, name))
Я вижу, как распечатывается весь список.
Как мне обработать весь список, как я хочу?