从包含名为bar(包含一个或多个文件)的目录和名为baz(还包含一个或多个文件)的目录的目录中运行以下代码.确保没有名为的目录foo.
import shutil
shutil.copytree('bar', 'foo')
shutil.copytree('baz', 'foo')
Run Code Online (Sandbox Code Playgroud)
它将失败:
$ 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'
Run Code Online (Sandbox Code Playgroud)
我希望它的工作方式与我输入的方式相同:
$ mkdir foo
$ cp bar/* foo/
$ cp baz/* foo/
Run Code Online (Sandbox Code Playgroud)
我是否需要使用shutil.copy()将每个文件复制baz到foo?(之后我已经将'bar'的内容复制到'foo'中shutil.copytree()?)或者是否有更简单/更好的方法?
使用python将文件从多个目录复制到一个目录中的最简单方法是什么?更清楚地说,我有一棵像这样的树
+Home_Directory
++folder1
-csv1.csv
-csv2.csv
++folder2
-csv3.csv
-csv4.csv
Run Code Online (Sandbox Code Playgroud)
我想将csv1,csv2,... etc全部放入某个指定的目录中,而不使用文件夹层次结构。
+some_folder
-csv1.csv
-csv2.csv
-csv3.csv
-csv4.csv
Run Code Online (Sandbox Code Playgroud)
我看过的一些解决方案:
使用shutil.copytree将无法正常工作,因为它将保留我不需要的文件结构。
我正在使用的代码与此问题中发布的代码非常相似: 在python中复制多个文件, 问题是我不知道如何迭代执行此操作。大概只是这之上的另一个for循环,但是我对os和shutil库还不够熟悉,无法确切地知道我要迭代的内容。有什么帮助吗?
我想将一个目录中的所有JPG文件复制到一个新目录.我怎样才能在Python中解决这个问题?我刚开始学习Python.
感谢您的回复.