У меня есть код, который сначала пытается найти файлы PDF. Если ему не удается найти даже один файл PDF, он продолжает поиск, например. .TIF в одной папке.Как последовательно искать файлы и сохранять их?
Однако у меня есть две проблемы. Во-первых, когда он находит файл PDF в папке, он также печатает все .TIF-файлы в TXT-файле. Но когда он не находит PDF-файл, он просто останавливается (даже без перерыв) и не создает .txt-файл. Я смущен, и любая помощь приветствуется.
b = os.walk('C:\\Users\\USER\\Desktop\\FOLDER')
os.listdir('C:\\Users\\USER\\Desktop\\FOLDER')
f = []
for(dirpath, dirnames, filenames) in b:
if f.extend(os.path.splitext(name)[0] for name in filenames if name.lower().endswith((".pdf"))) == []:
pass
break
elif f.extend(os.path.splitext(name)[0] for name in filenames if name.lower().endswith((".tif"))) == []:
pass
def save_to_file(text):
for name in f:
with open('C:\\Users\\USER\\Desktop\\FOLDER\\test.txt', mode='wt', encoding='utf-8') as myfile:
myfile.write('\n'.join(text))
myfile.write('\n')
save_to_file(f)
'f.extend' всегда возвращает' None', поэтому он не имеет дела в предложении 'if'. –
, но если я использую только имя.lower(). Endswith (..), то он не работает ни – Naj