shutil创建文件夹
时间: 2023-12-30 09:03:53 浏览: 83
要使用shutil创建文件夹,可以使用shutil库中的`mkdir()`函数。下面是创建一个名为`new_folder`的文件夹的示例代码:
```python
import shutil
# 指定要创建的文件夹路径
folder_path = 'new_folder'
# 使用shutil的mkdir()函数创建指定路径的文件夹
shutil.mkdir(folder_path)
```
如果指定的路径已经存在文件夹,则会抛出`FileExistsError`异常。此时可以使用`exist_ok=True`参数避免抛出异常,例如:
```python
import shutil
# 指定要创建的文件夹路径
folder_path = 'new_folder'
# 使用shutil的mkdir()函数创建指定路径的文件夹,避免抛出异常
shutil.mkdir(folder_path, exist_ok=True)
```
注意,`mkdir()`函数只能创建一层文件夹,如果要创建多层嵌套的文件夹,可以使用`os.makedirs()`函数。
相关问题
shutil复制文件夹到另一个文件夹
您可以使用 shutil 模块的 `copytree()` 函数将一个文件夹复制到另一个文件夹。这个函数会递归地复制整个文件夹及其内容。
下面是一个示例代码:
```python
import shutil
# 定义源文件夹的路径
src_folder = '/path/to/source/folder'
# 定义目标文件夹的路径
dest_folder = '/path/to/destination/folder'
# 使用 copytree() 函数复制文件夹及其内容
shutil.copytree(src_folder, dest_folder)
```
请确保替换 `src_folder` 和 `dest_folder` 的值为实际的文件夹路径。此代码将源文件夹中的所有文件和子文件夹复制到目标文件夹中。如果目标文件夹不存在,`copytree()` 函数会自动创建它。
注意:如果目标文件夹已经存在,`copytree()` 函数会引发 `FileExistsError` 异常。如果您希望覆盖目标文件夹,请在调用 `copytree()` 函数之前先删除它。
用for循环,使用shutil将文件夹下的所有子文件夹复制到指定路径
可以使用 os.walk() 函数遍历文件夹下的所有子文件夹,然后使用 shutil.copytree() 将子文件夹复制到指定路径。
以下是示例代码:
```python
import os
import shutil
# 原文件夹路径
src_dir = '/path/to/src/dir'
# 目标文件夹路径
dst_dir = '/path/to/dst/dir'
# 遍历原文件夹下的所有子文件夹,并将其复制到目标文件夹下
for root, dirs, files in os.walk(src_dir):
for dir in dirs:
src_path = os.path.join(root, dir)
dst_path = os.path.join(dst_dir, os.path.relpath(src_path, src_dir))
shutil.copytree(src_path, dst_path)
print(f'{src_path} copied to {dst_path}')
```
代码中使用了 os.path.relpath() 函数获取子文件夹相对于原文件夹的相对路径,以便在目标文件夹中创建相应的子文件夹。
阅读全文