Python从 输入目录 中随机检出一定比例的文件或目录,移动到保存 测试集目录 中,原输入目录作为训练目录
时间: 2023-07-16 12:16:50 浏览: 47
可以使用Python中的os和shutil模块来实现这个功能。首先,需要确定要将多少比例的文件或目录移到测试集目录中。假设我们要将输入目录中的30%的文件或目录移动到测试集目录中,可以使用以下代码:
```python
import os
import random
import shutil
input_dir = "/path/to/input/dir"
test_dir = "/path/to/test/dir"
split_ratio = 0.3
# 获取输入目录中的所有文件和目录
all_items = os.listdir(input_dir)
# 计算要移动的文件或目录数量
split_num = int(len(all_items) * split_ratio)
# 随机选择要移动的文件或目录
split_items = random.sample(all_items, split_num)
# 将选择的文件或目录移动到测试集目录中
for item in split_items:
item_path = os.path.join(input_dir, item)
if os.path.isfile(item_path):
shutil.move(item_path, os.path.join(test_dir, item))
else:
shutil.move(item_path, os.path.join(test_dir, item))
```
代码中,首先指定输入目录、测试集目录和要移动的比例。然后,通过os.listdir()函数获取输入目录中的所有文件和目录,计算要移动的文件或目录数量,并使用random.sample()函数随机选择要移动的文件或目录。最后,通过shutil.move()函数将选择的文件或目录移动到测试集目录中。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)