[編集:最終コードを見てください]以下のコードを使用して、ソースディレクトリからランダムに5つのファイルを選択し、それらを新しいディレクトリにコピーします。それは私に「このようなファイルまたはディレクトリ 'x'が存在しない」というIOエラーを与えています。「x」はディレクトリパスのないファイル名です。何とか "ファイル"にパスを保存していません。私はこのフォーラムだけでなく、シャットルのチュートリアルを見たが、私はそれを把握することはできません。 (btw、これは私が尋ねた以前の質問に似ていますが、コードとエラーが変更されました。前もって感謝します!ファイルのランダム選択/コピーのためのパスを格納していませんか?
import os
import shutil
import random
import os.path
src_dir = 'C:\\'
target_dir = 'C:\\Test'
src_files = (os.listdir(src_dir))
def valid_path(dir_path, filename):
full_path = os.path.join(dir_path, filename)
return os.path.isfile(full_path)
files = [f for f in src_files if valid_path(src_dir, f)]
choices = random.sample(files, 5)
for files in choices:
shutil.copyfile(files, target_dir)
print ('Finished!')
ニース!これはトリックを行うように見えました。今私は私の目的地に書き込む許可を持っていないが、それはパスを保存するという問題を過ぎているようだと私に伝えている。ありがとう! – user1252778
私の編集を見て、あなたは 'copy'関数の代わりに' copy'関数が必要だと思います。乾杯:-) – jedwards