The following code uses the os.walk() method to recursively walk through all the files looking for .wav and .mp3 files, as follows (see code 5.03—view.py):
def add_all_audio_files_from_directory(self): directory_path = tkinter.filedialog.askdirectory() if not directory_path: return audio_files_in_directory = self.get_all_audio_file_from_directory(directory_path) for audio_file in audio_files_in_directory: self.model.add_to_play_list(audio_file) file_path, file_name = os.path.split(audio_file) self.list_box.insert(tk.END, file_name) def get_all_audio_file_from_directory(self, directory_path): audio_files_in_directory = [] for (dirpath, dirnames, filenames) in os.walk(directory_path): for audio_file in filenames: ...