Как скопировать весь каталог файлов в существующий каталог с помощью Python?

| | | | | | | | | | | | | | | | |

Запустите следующий код из каталога, который содержит каталог с именем bar (содержащий один или несколько файлов) и каталог с именем baz (также содержащий один или несколько файлов) . Убедитесь, что нет каталога с именем foo.

импорт Shutil Shutil.copytree("bar", "foo") Shutil.copytree("баз", " foo") 

Это завершится ошибкой:

$ python copytree_test.py Трассировка (самый последний вызов последним): Файл "copytree_test.py", строка 5, в <модуле> Shutil.copytree("baz", "foo") Файл "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/shutil.py", строка 110, в файле copytree "/System/ Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/os.py", строка 172, в makedirs OSError: [Errno 17] Файл существует: "foo" 

Я хочу, чтобы это работало так же, как если бы я набрал:

$ mkdir foo $ cp bar/* foo/ $ cp baz/* foo/ 

Нужно ли использовать shutil.copy() для копирования каждого файла из baz в foo? (После того, как я уже скопировал содержимое «bar» в «foo» с помощью shutil.copytree()?) Или есть более простой/лучший способ?