from scipy.io.wavfile import read
files = [f for f in os.listdir('.') if os.path.isfile(f)]
print files
for i in range(0,1):
w = read(files[i])
print w
Мне нужно только прочитать .wav-файлы из рабочего каталога python. И сохраните каждый .wav-файл в виде массива numpy. Это мой код. Но в этом коде все файлы читаются. Я только читаю wav-файлы в каталоге? Как это возможно?Как читать только файлы wav в каталоге с помощью Python?
Теперь я получил folllowing ошибку – santh
Traceback (самый последний вызов последним): Файл " ", строка 3, в Файл" C: \ Anaconda \ lib \ site-packages \ scipy \ io \ wavfile.py ", строка 132, в read fsize = _read_riff_chunk (fid) Файл" C: \ Anaconda \ lib \ site-packages \ scipy \ io \ wavfile.py ", строка 83, в _read_riff_chunk raise ValueError ("Не файл WAV.") ValueError: не WAV-файл. –
santh
@santh Кажется, что не все файлы в вашем каталоге, заканчивающиеся на '.wav', являются wav-файлами. Как вы отличить реальные файлы wav от других файлов, если они имеют одинаковое расширение? По содержанию? –