Я не уверен, правильно ли я понимаю, как os.walk хранит свои результаты.
Я пытаюсь сделать следующее:
Я проверяю корневую папку для последующих папок. Их несколько сотен, и они вложены каким-то единообразным способом.
Я пытаюсь проверить каждую подпапку и, если она заканчивается четырехзначным числом, сохранить ее в списке.
Я использовал очень процедурный код и получил его, но код использует os.listdir, что означает, что мне нужно выполнять функцию для каждой папки, которую я хочу.
Есть ли лучший способ?
def ListadorPastas(pasta):
resultado = []
regex = "^[0-9]{4}"
padrao = re.compile(regex)
for p in os.listdir(pasta):
regexObject = re.match(padrao,p[-4:])
if (regexObject!=None):
resultado.append(regexObject.string)
else:
pass
return resultado
Кроме того, у меня есть проблема с регулярным выражением: это регулярное выражение совпадает с последними четырьмя нарезанными цифрами выражения. Иногда у меня есть папки с 5 цифрами в конце, которые также будут соответствовать. Я пытался использовать "$ [0-9] {4}", но он ничего не возвращает. Есть идеи почему?
Заранее спасибо.
George