random中sample()函数的用法----python

sample(list,k):首先返回一个长度为k新列表,新列表中存放的是list中随机的k个唯一元素

下面介绍一个实例,这个实例也很实用,与其说介绍sample用法,不如这个实例的分享。

移动文件中部分数据,在做训练集与测试集很方便,或者其他有用到的地方。

import os,random,shutil

def moveFile(fileDir, traDir, rate):
    '''  移动部分文件

    :param fileDir: srcFileDir
    :param traDir: targetFileDir
    :param rate: move rate
    :return:
    '''
    #获取原始数据路径
    pathDir = os.listdir(fileDir)

    fileNum = len(pathDir)
    pickNum = int(fileNum*rate)
    sample = random.sample(pathDir,pickNum) #用于截取列表指定长度的随机数,并不改变列表本身
    for name in sample:
        #shutil.copy(fileDir+name,traDir+name); #将文件/图片复制到目标文件
        shutil.move(fileDir+name,traDir+name)   #将文件/图片移动至目标文件
    return


if __name__=='__main__':
    fileDir = "C:/MyProect/DeepLearnProject/Lane_detection/lanenet-lane-detection-master/data/trainData/gt_image/"
    traDir = "C:/MyProect/DeepLearnProject/Lane_detection/lanenet-lane-detection-master/data/trainData/testTargetImage/"
    rate = 0.2
    moveFile(fileDir,traDir,rate)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值