7

ディレクトリの下には約 2000 のドキュメントがあります。いくつかのドキュメントをランダムに選択し、それらを新しいディレクトリに自動的にコピーしたいと考えています。

特定のディレクトリの下に 1 つのドキュメント名を生成するための関連情報。

4

2 に答える 2

15

試す:

import shutil, random, os
dirpath = 'your/read/location'
destDirectory = 'your/destination'

filenames = random.sample(os.listdir(dirpath), 100)
for fname in filenames:
    srcpath = os.path.join(dirpath, fname)
    shutil.copyfile(srcpath, destDirectory)
于 2012-07-07T03:37:18.190 に答える
1
import shutil, random, os
dirpath = 'your/read/location'
destDirectory = 'your/destination'

filenames = random.sample(os.listdir(dirpath), 100)
for fname in filenames:
    srcpath = os.path.join(dirpath, fname)
    destPath = os.path.join(destDirectory, fname)
    shutil.copyfile(srcpath, destPath)

@inspectorG4dget (および @olinox14 が編集) の回答に基づいて、この小さな調整が私の状況に最適であることがわかりました。shutil.copyfile() から「IsDirectoryError」を取得し続けたので、ドキュメントをチェックアウトし、関数がファイル (ディレクトリではなく) にコピーされることに気付きました。この調整により、ファイル名が新しいディレクトリに保持されます。

于 2021-11-24T16:57:37.093 に答える