файлов в директории files?
Пока иду как-то так
for name in os.listdir('files'):
if name [name.rfind('.'):] == '.j2':
with open(name, 'r') as f:
print(f)
FileNotFoundError: [Errno 2] No such file or directory: 'some_file_stage.j2'
Хотя он есть в директории files/some_file_stage.j2
need_to_poisk = 'qwe' for name in os.listdir('.'): if name [name.rfind('.'):] == '.py': with open(name, 'r') as f: for line in f: if line.find(need_to_poisk)>=0: print(line.strip())
need_to_poisk = 'qwe' for name in os.listdir('files'): if name [name.rfind('.'):] == '.j2': with open(name, 'r') as f: for line in f: if line.find(need_to_poisk)>=0: print(line.strip()) Traceback (most recent call last): File "grab_domains.py", line 44, in <module> with open(name, 'r') as f: FileNotFoundError: [Errno 2] No such file or directory: 'somename_file.j2' Добавил files в for name in os.... Формат тоже поменял
при открытии надо папку плюсовать еще к пути with open(os.path.join('files', name), 'r') as f:
os.path.splitext(filename)[1] для извлечения расширения.
Используй pathlib
Подскажи, пожалуйста, если сможешь: for Name in os.listdir('files'): if Name [Name.rfind('.'):] == '.j2': with open(os.path.join(PathWithFile, Name), 'r') as f: for line in f: with open('fitupstream.txt', 'w') as fit: if line.find(SortBy)>=0: print(line, file=fit) fit.write(line) Если fit.write(line) заменить на print(line) выводится полный список, который нужен, а если fit.write(line) только одна строка в файл
Потому что на каждом шаге цикла файл очищаешь
Обсуждают сегодня