Uruchom następujący kod z katalogu zawierającego katalog o nazwie bar
(zawierający jeden lub więcej plików) oraz katalog o nazwie baz
(zawierający również jeden lub więcej plików) . Upewnij się, że nie istnieje katalog o nazwie foo
.
import Shutil Shutil.copytree("bar", "foo") Shutil.copytree("baz", " foo")
Nie powiedzie się z:
$ python copytree_test.py Traceback (ostatnie wywołanie ostatnie): Plik "copytree_test.py", wiersz 5, w <module> Shutil.copytree("baz", "foo") Plik "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/shutil.py", wiersz 110, w pliku copytree "/System/ Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/os.py", wiersz 172, w makedirs OSError: [Errno 17] Plik istnieje: "foo"
Chcę, żeby to działało tak samo, jak po wpisaniu:
$ mkdir foo $ cp bar/* foo/ $ cp baz/* foo/
Czy muszę używać shutil.copy()
, aby skopiować każdy plik z baz
do foo
? (Po tym, jak już skopiowałem zawartość „bar” do „foo” za pomocą shutil.copytree()
?) A może jest łatwiejszy/lepszy sposób?