Я хотел бы создать 2 сценария. Первый будет отвечать за обход всех подкаталогов в родительской папке, поиск файлов с расширением "*.mp4", "*.txt","*.jpg"
и, если папка (например, testfolder
) с такими тремя файлами найдена, другой сценарий выполняет операцию создания архива testfolder.tar
.
Вот мое дерево каталогов для тестирования этих сценариев: https://imgur.com/4cX5t5N
rootDirectory
содержит parentDirectory1
и parentDirectory2
. parentDirectories
содержит childDirectories
.
Вот код dirScanner.py
, пытающийся напечатать расширения файлов в подкаталогах:
import os
rootdir = r'C:\Users\user\pythonprogram\rootDirectory'
for directory in os.walk(rootdir):
for subdirectory in directory:
extensions = []
if os.path.isfile(os.curdir):
extensions.append(os.path.splitext(os.curdir)[-1].lower())
print(extensions)
Однако это абсолютно не работает, как я ожидаю Работа. Как мне пройти через parentDirectories
и childDirectiories
в rootDirectory
?
Я бы хотел, чтобы все было просто: «Хорошо, я в этом каталоге, файлы этого каталога XXX , Должен / Не должен их упаковать "
Кроме того, это мой другой скрипт, который должен отвечать за упаковку файлов по указанному пути. Я пытаюсь научиться пользоваться классами, но не знаю, правильно ли я это понимаю.
import tarfile
class folderNeededToBePacked:
def __init__(self, name, path):
self.path = path
self.name = name
def pack(self):
tar = tarfile.open(r"{0}/{1}.tar".format(self.path, self.name), "w")
for file in self.path:
tar.add(file)
tar.close()
Я был бы благодарен за все советы и подсказки, как достичь цели этой задачи.