從包含名為 bar
的目錄(包含一個或多個文件)和一個名為 baz
的目錄(也包含一個或多個文件)的目錄中運行以下代碼.確保沒有名為 foo
的目錄。
import shutil shutil.copytree("bar", "foo") shutil.copytree("baz", " foo")
它將失敗:
$ python copytree_test.py Traceback(最近一次調用最後):文件“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] File exists: "foo"
我希望它的工作方式與我輸入的一樣:
$ mkdir foo $ cp bar/* foo/ $ cp baz/* foo/
我是否需要使用 shutil.copy()
將 baz
中的每個文件複製到 foo
中? (在我已經使用 shutil.copytree()
將“bar”的內容複製到“foo”之後?)或者有更簡單/更好的方法嗎?