Python 如何将目录的百分比复制到新目录中?
我正在写一个函数,看起来像这样Python 如何将目录的百分比复制到新目录中?,python,python-3.x,copy,shutil,file-copying,Python,Python 3.x,Copy,Shutil,File Copying,我正在写一个函数,看起来像这样 def copy_文件(来源、培训、测试、拆分大小): 其中: -source是我要从中复制的源目录 -培训是要复制到的目录 -测试是要复制到的另一个目录 -split_size是我要复制到测试和培训中的源的百分比,以小数点表示(例如,如果split_size为0.5,我将复制50%的源到培训中,复制50%到测试中) 我正在使用shutil库来使用copy,我将迭代我的源文件来复制每个文件,比如 if len(image) > 0:
def copy_文件(来源、培训、测试、拆分大小):
其中:
-source是我要从中复制的源目录
-培训是要复制到的目录
-测试是要复制到的另一个目录
-split_size是我要复制到测试和培训中的源的百分比,以小数点表示(例如,如果split_size为0.5,我将复制50%的源到培训中,复制50%到测试中)
我正在使用shutil
库来使用copy,我将迭代我的源文件来复制每个文件,比如
if len(image) > 0:
copy(image, training)
但我不确定如何指定此函数的拆分大小部分。我确信这并不复杂,我只是在复制文件方面经验很少,这是我第一次与shutil合作。您可以使用
os
软件包获取源目录中的文件列表。获得文件列表后,可以根据传递的百分比值将列表拆分为两个列表。之后,遍历这两个列表以复制相应目录中的文件
import os
import shutil
def copy_file(src,train,test,percent):
files_list = os.listdir(src)
splitVal = int(round(percent*len(file_list)))
train_file_list = files_list[:splitVal]
test_file_list = files_list[splitVal:]
# now iterate through the two list and copy the files to respective
# directory using shutil.copy(file_name,dest_dir)
你的问题中有几个语法错误。请重新阅读并更正,因为很难理解你想做什么。另外,更多的例子也确实会有帮助well@Jab我找不到任何语法错误,但格式有问题。现在修好了。哦,谢谢!所以splitVal将百分比转换为将被复制的文件数量,然后train_file_list使用该数量作为切片,在?