无法使用循环复制Python中某些扩展名的文件

时间:2014-09-16 18:55:47

标签: python-2.7

我想遍历Audio_files文件夹中的文件并检查它是原始文件还是wave文件并将其放在相应的目录中。 这是我的代码:

import shutil
import os

source = os.listdir("/home/GM/codec_implement/Audio_files/")

destination = "/home/GM/codec_implement/raw_files/"
destination2 = "/home/GM/codec_implement/raw_files/wave_files/"

for files in source:
    if files.endswith(".wav"):
        shutil.copy(files,destination)
    elif files.endswith(".raw"):
        shutil.copy(files,destination)
    else:
        print "Invalid format"

请告诉我错误的地方。我得到的错误是:

  

回溯(最近一次呼叫最后一次):文件" ./ checkaudiofiles.py",行   12,在shutil.copy(文件,目标)文件中   " /usr/lib/python2.7/shutil.py",第119行,在copy copyfile(src,dst)中   文件" /usr/lib/python2.7/shutil.py",第82行,在copyfile中   打开(src,' rb')为fsrc:IOError:[Errno 2]没有这样的文件或目录:   ' test_sound.wav'

1 个答案:

答案 0 :(得分:0)

错误意味着test_sound.wav文件不在该目录上。这些文件可能会在两个进程之间被删除,或者os.listdir()shutil.copy()不会以相同的方式列出文件。