在一个目录中运行以下代码,该目录包含一个名为bar
的目录(包含一个或多个文件)和一个名为baz
的目录(也包含一个或多个文件)。确保没有名为foo
的目录。
import shutil
shutil.copytree('bar', 'foo')
shutil.copytree('baz', 'foo')
它将失败:
$ python copytree_test.py
Traceback (most recent call last):
File "copytree_test.py", line 5, in <module>
shutil.copytree('baz', 'foo')
File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/shutil.py", line 110, in copytree
File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/os.py", line 172, in makedirs
OSError: [Errno 17] File exists: 'foo'
我想让它像我输入的那样工作:
$ mkdir foo
$ cp bar/* foo/
$ cp baz/* foo/
我是否需要使用shutil.copy()
将baz
中的每个文件复制到foo
中?(在我已经用shutil.copytree()
将'bar'的内容复制到'foo'后?)或者有更简单/更好的方法吗?