这几天做数据的时候遇到了一个问题,我有一个文件夹,里面有各种文件,什么图片啊等等的文件,和我的好朋友杨医生要求只提取出文件夹而不需要文件,我于是一个一个文件夹新建,花了2个多小时。
今天,我决定写一段代码实现只提取文件夹。我这里利用了python来实现的。附上代码:
另外说明,path是要拷贝的目录,target_path是空文件夹存放的地址。
完美的解决了我的问题。
import os
"""
说明:本代码是将原来的文件里文件夹进行拷贝,而不需要原来文件里的文件,会拷贝给定目录中所有的文件夹到指定的target_path中
"""
# 需要拷贝的目录
path = r"D:/数据集/01-250"
# 需要保存到的路径
target_path = "D:/3/"
# 创建一个空列表用来存放文件夹地址
dir = []
for root, dirs, files in os.walk(path):
# 拿到了所有的文件夹地址
dir.append(root)
# print(dir)
# 判断原始存放的文件夹是否存在
if os.path.exists(target_path):
pass
else:
os.makedirs(target_path)
for file_name in dir:
# 提取file_name文件夹地址的最后一个位,即为文件名
last_file_name = file_name.split("/")[-1]
# 创建新的文件夹地址
new_file_name = os.path.join(target_path, last_file_name)
# 创建文件夹
if os.path.exists(new_file_name):
continue
else:
os.makedirs(new_file_name)